题目描述
编写一个函数,检查输入的链表是否是回文的。
示例1:
1 | 输入: 1->2 |
示例2:
1 | 输入: 1->2->2->1 |
进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?
思路
- 第一步:通过快慢指针找到链表中点;
- 第二步:将中点往后的链表段进行翻转;
- 第三步:从两段链表的头节点开始进行逐一比对。
图解
代码
1 | /** |
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/palindrome-linked-list-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。