141.Linked List Cycle
# Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next = None class Solution: def hasCycle(self, head: ListNode) -> bool: slow = head fast = head while fast and fast.next : slow = slow.next fast = fast.next.next if slow == fast: return True return False
Java 版:
public class Solution { public boolean hasCycle(ListNode head) { if(head == null) return false; ListNode slow = head, fast = head.next; // 一开始错写为 fast = head 了 while(fast != null && fast.next != null){ if(fast == slow) return true; slow = slow.next; fast = fast.next.next; } return false; } }