题目描述:设计一种方式检查一个链表是否为回文链表。
样例:1->2->1 就是一个回文链表。
当设计检查字符串是否为回文字符串的时候,可以用两个指针分别从头尾往中间遍历。但是链表不行,因为链表是不能往前回溯的。
所以我们可以设计这样一个方法:将链表从中间断开,然后令其中一部分翻转,再从头至尾遍历两个链表即可。
这里面找链表的中间节点的方法和链表翻转,我们都在之前的内容中讲过(详见:翻转链表,找中间节点)
代码就是这样的了:
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, x):
# self.val = x
#