判断链表中是否有环

判断链表中是否有环

http://www.nowcoder.com/questionTerminal/650474f313294468a4ded3ce0f7898b9

快慢指针
有环的话,快慢指针在某一时刻一定会相等

class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None

#
# 
# @param head ListNode类 
# @return bool布尔型
#
class Solution:
    def hasCycle(self , head):
        # 0 or 1
        if not head or not head.next:
            return False
        slow, fast = head, head.next
        while slow != fast:
            slow = slow.next
            # 快指针到了链表尾部
            if not fast or not fast.next:
                return False
            fast = fast.next.next
        return True
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务