1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| /**
* The fast can catch slow if it's a cycle linked list.
*/
public class Solution {
public boolean hasCycle(ListNode head) {
if (head == null) return false;
ListNode fast = head;
ListNode slow = head;
while (fast != null && fast.next != null) {
fast = fast.next.next;
slow = slow.next;
if (fast == slow) return true;
}
return false;
}
}
|