leetcode 简单 第六十七题 回文链表
Posted 丁壮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 简单 第六十七题 回文链表相关的知识,希望对你有一定的参考价值。
请判断一个链表是否为回文链表。
示例 1:
输入: 1->2 输出: false
示例 2:
输入: 1->2->2->1 输出: true
进阶:
你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?
# Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next = None class Solution: def reverst(self,head): a=head b=head.next head.next = None; while b: c = b.next b.next = a a = b b=c head = a return head def isPalindrome(self, head): """ :type head: ListNode :rtype: bool """ if not head or not head.next: return True fast = slow = head while fast.next and fast.next.next: slow = slow.next fast = fast.next.next slow = slow.next slow = self.reverst(slow) while slow: if head.val != slow.val: return False slow = slow.next head = head.next return True
以上是关于leetcode 简单 第六十七题 回文链表的主要内容,如果未能解决你的问题,请参考以下文章
剑指Offer(Java版)第六十七题:给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。 例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口