回文链表(解题报告)
来源:互联网 发布:李天生sqlserver 编辑:程序博客网 时间:2024/06/04 00:25
题目描述
请编写一个函数,检查链表是否为回文。
给定一个链表ListNode* pHead,请返回一个bool,代表链表是否为回文。
测试样例:
{1,2,3,2,1}
返回:true
{1,2,3,2,3}
返回:false
解题思路:利用栈进行反转对比操作,注意快慢指针的使用,链表长度为奇数或者偶数时的特殊处理即可。
public boolean isPalindrome(ListNode pHead) { if(pHead==null||pHead.next==null){ return false; }ListNode fast=pHead;ListNode slow=pHead;Stack<Integer> s=new Stack<Integer>();s.push(pHead.val);while(fast.next!=null&&fast.next.next!=null){slow=slow.next;fast=fast.next.next;s.push(slow.val);}if(fast.next==null){s.pop();}while(slow.next!=null){slow=slow.next;if(slow.val!=s.pop()){return false;}}return true; }
阅读全文
0 0
- 回文链表(解题报告)
- 回文子串解题报告
- 链表分割(解题报告)
- 回文字符串的判断解题报告
- 遍历链表 构造并升序输出(解题报告)
- 解题报告PKU1159 最长公共字串 回文串 DP
- 解题报告之 X进制回文数
- Leetcode 409. Longest Palindrome 构造最长回文串 解题报告
- Leetcode 125. Valid Palindrome 回文验证 解题报告
- 【九度OJ】题目1192:回文字符串 解题报告
- 广师OJ 2238 回文子串 解题报告
- HDU3068 最长回文串 解题报告【字符串】【Manacher】
- Leetcode 647. Palindromic Substrings 回文子串 解题报告
- c++回文日期【NOIP2016普及组】解题报告
- HDU1010(解题报告)
- POJ(解题报告)
- HDU1262(解题报告)
- HDU2028(解题报告)
- 获取当前月份日期与上个月份日期
- win7系统自带的录像在哪里 Win7问题步骤记录器教程详解
- DIV+CSS页面布局练习
- 多线程进阶003 之 可利用的并行性案例
- 颜色空间——log空间和线性空间
- 回文链表(解题报告)
- 《C#高级编程》笔记系列第三弹
- x的平方根(二分查找实现)
- Pycharm or Intellij IDEA Cannot load settings from file workspace.xml
- Android 中3d旋转动画Rotate3dAnimation大图旋转失真的问题
- DIV+CSS首页布局练习
- 决策树-剪枝算法(二)
- VBS脚本获取安全标识符SID(Security Identifiers)的方法
- MySQL(四)--SQL_MODE