力扣刷题(python)50天——第三十三天:环形链表 II
题目
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/linked-list-cycle-ii
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
方法
本题与上一题几乎一模一样,只修改了部分语句
解答
# Definition for singly-linked list.
# class ListNode(object):
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution(object):
def detectCycle(self, head):
"""
:type head: ListNode
:rtype: ListNode
"""
if not head:
return None
list1=[]
list1.append(head)
head=head.next
while head:
if head in list1:
return head
list1.append(head)
head=head.next
return None
执行结果、
额。。。。
提升:
提升方法上一题已经说过,此处不再赘述。
参考额外方法:Floyd 算法
https://leetcode-cn.com/problems/linked-list-cycle-ii/solution/huan-xing-lian-biao-ii-by-leetcode/