141. Linked List Cycle #
题目 #
给定链表头节点 head
,判断链表中是否有环。
如果链表中有某个节点,可以通过连续跟踪 next
指针再次到达,则链表中存在环。
如果链表中存在环 ,则返回 true
。 否则,返回 false
。
思路 #
代码 #
class ListNode {
int val;
ListNode next;
ListNode (int x) { val = x; next = null; }
}
public class Solution {
public boolean hasCycle(ListNode head) {
ListNode slow=head, fast=head;
while (fast != null && fast.next != null) {
fast = fast.next.next;
slow = slow.next;
if (slow == fast) return true;
}
return false;
}
}