思路:
快慢指针第一次相遇后,固定其中一个指针不动,另一个指针以步长为1前进,第二次相遇,它的步数即为环的长度。
public int loopLength(){
if(this.head==null){
return 0;
}
ListNode fast=this.head;
ListNode slow=this.head;
while(fast!=null&&fast.next!=null){
slow=slow.next;
fast=fast.next.next;
if(slow==fast){
int count=1;
slow=slow.next;
while(slow!=fast){
slow=slow.next;
count++;
}
return count;
}
}
return 0;
}