https://leetcode-cn.com/problems/linked-list-cycle/
快慢指针,根据操作跑步的常识,跑得快的总能追的上跑得慢,因为操场是一个圆嘛
这一常识同样适用环形链表的判断。
代码如下:
public class Solution {
public boolean hasCycle(ListNode head) {
if(head==null||head.next==null){
return false;
}
ListNode quick = head;
ListNode slow = head;
while(true){
quick = quick.next;
if(quick==null){
return false;
}
quick = quick.next;
slow = slow.next;
if(quick==null){
return false;
}
if(quick==slow){
return true;
}
}
}
}