题目大意
https://leetcode.com/problems/palindrome-linked-list/
判断单链表是否是回文,要求时间复杂度O(n),空间复杂度:O(1)
题目分析
先求链表长度,然后从头开始就地逆置一半长度的链表,此时链表相当于一分为二了,然后再从中间往两端逐个比较元素值,注意需要判断长度奇偶性。当然更加好的方法是用快慢指针找到链表中点,链表后半段元素就地逆置,然后再比较两部分。
代码
|
|
https://leetcode.com/problems/palindrome-linked-list/
判断单链表是否是回文,要求时间复杂度O(n),空间复杂度:O(1)
先求链表长度,然后从头开始就地逆置一半长度的链表,此时链表相当于一分为二了,然后再从中间往两端逐个比较元素值,注意需要判断长度奇偶性。当然更加好的方法是用快慢指针找到链表中点,链表后半段元素就地逆置,然后再比较两部分。
|
|