刷题笔记24——判断链表是否回文链表


题目描述

给定一个链表的头节点head, 请判断该链表是否为回
文结构。 例如: 1->2->1, 返回true。 1->2->2->1, 返回true。15->6->15, 返回true。 1->2->3, 返回false。

解法1:使用栈

遍历链表,元素入栈,弹出时再从头判断即可
时间复杂度和额外空间复杂度都是O(N)
刷题笔记24——判断链表是否回文链表
刷题笔记24——判断链表是否回文链表

解法2:快慢指针+栈

利用快慢指针,快指针走两步,慢指针走一步
时间复杂度O(N),额外空间复杂度O(N/2)
刷题笔记24——判断链表是否回文链表
刷题笔记24——判断链表是否回文链表

解法3: