题目描述

判断一个链表是否为回文链表

分析

  1. 使用空间为n:将链表整个压入栈。然后栈元素弹出。挨个比较元素是否相同。
  2. 使用空间为n/2:快慢指针。快指针一次两步慢指针一次一步。快指针到达结尾时,慢指针到达中间,中间部分之后压入栈。然后栈弹出元素,与前半部分相比较。
  3. 不使用额外空间:快慢指针。快指针一次两步慢指针一次一步。快指针到达结尾时,慢指针到达中间。然后将后半部分链表逆序。两个指针分别从头尾出发,进行元素比较。最后要将后半部分再还原回来。

代码

【快慢指针/栈】234 回文链表
【快慢指针/栈】234 回文链表

【快慢指针/栈】234 回文链表
【快慢指针/栈】234 回文链表

相关文章: