题目 141. 环形链表
给你链表的head,判断是否有环
思路
Floyd 判圈算法(龟兔赛跑算法)
如果该链表中有环,那么「兔子」会先于「乌龟」进入环,并且一直在环内移动。
等到「乌龟」进入环时,由于「兔子」的速度快,它一定会在某个时刻与乌龟相遇,即套了「乌龟」若干圈。
题解
public boolean hasCycle(ListNode head) {
ListNode slow=head;
ListNode fast=head;
boolean isCycle=false;
while (fast.next!=null&&fast.next.next!=null){
slow=slow.next;
fast=fast.next.next;
if(slow==fast){
isCycle=true;
break;
}
}
return isCycle;
}