题解 | #判断链表中是否有环#
判断链表中是否有环
https://www.nowcoder.com/practice/650474f313294468a4ded3ce0f7898b9
import java.util.*;
/**
* Definition for singly-linked list.
* class ListNode {
* int val;
* ListNode next;
* ListNode(int x) {
* val = x;
* next = null;
* }
* }
*/
public class Solution {
public boolean hasCycle(ListNode head) {
ListNode fast=head;
ListNode slow=head;
while(fast!=null&&fast.next!=null)
{slow=slow.next;
fast=fast.next.next;
if(slow==fast){
return true;
}}
return false;
}
}
本质上就是设置一个快指针(2步),一个慢指针(1步),只要链表有环,快指针与满指针一定会重合,否则一定不重合。