A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null.
Return a deep copy of the list.
Challenge
Could you solve it with O(1) space?
```
"""
Definition of ListNode
class ListNode(object):
def __init__(self, val, next=None):
self.val = val
self.next = next
"""
class Solution:
"""
@param head: The first node of linked list.
@return: True if it has a cycle, or false
"""
def hasCycle(self, head):
# write your code here
try:
slow = head
fast = head.next
while(slow is not fast):
slow = slow.next
fast = fast.next.next
return True
except:
return False
快慢指针
用try..except
[Lintcode]102. Linked List Cycle/[Leetcode]141. Linked List Cycle
原文:https://www.cnblogs.com/siriusli/p/10375621.html