美文网首页
给定一个链表,判断链表中是否有环

给定一个链表,判断链表中是否有环

作者: mying_三丘 | 来源:发表于2019-02-28 20:39 被阅读0次

1.开辟字典,有额外空间

class Solution(object):
    def hasCycle(self, head):
        """
        :type head: ListNode
        :rtype: bool
        """
        dict1={}
        if not head or not head.next:
            return False
        count=-1
        while head and head not in dict1:
            count+=1
            dict1[head]=count
            if head.next:
                head = head.next
            else:
                return False
        return True

2.快慢指针,没有额外空间

class Solution(object):
    def hasCycle(self, head):
        """
        :type head: ListNode
        :rtype: bool
        """
        if not head or not head.next:
            return False
        quick=slow=head
        # 下边这个循环不用担心死循环,因为只要出现环,就会被if语句捕捉,不会永远转下去的
        # 若无环,当快指针遍历到最后时,就会结束循环
        while quick.next and quick.next.next:
            quick=quick.next.next
            slow=slow.next
            if quick==slow:
                return True
        return False

相关文章

  • 141. 环形链表

    给定一个链表,判断链表中是否有环。

  • 141.环形链表

    给定一个链表,判断链表中是否有环。

  • 力扣算法 - 环形链表(判断是否有环)

    环形链表 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表...

  • leetcode -141. 环形链表 -https://lee

    环形链表 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表...

  • Leetcode141环形链表

    题目: 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中...

  • LeetCode初级-环形链表

    题目: 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中...

  • Leetcode 141 环形链表

    环形链表 题目 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接...

  • LeetCode 141. 环形链表

    141. 环形链表 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾...

  • 【LeetCode】141-环形链表

    环形链表 题目 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接...

  • Python LeetCode-141. 环形链表(难度-简单)

    LeetCode-141. 环形链表 1.题目描述 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我...

网友评论

      本文标题:给定一个链表,判断链表中是否有环

      本文链接:https://www.haomeiwen.com/subject/zptluqtx.html