//环的入口点
public int enterEntry(){
Entry fast = this.head;
Entry slow = this.head;
while(fast != null && fast.next != null){
fast = fast.next.next;
slow = slow.next;
if(slow == fast){
break;
}
}
slow = this.head;
while(fast != slow){
fast = fast.next;
slow = slow.next;
}
return slow.data;
}
五、环的长度
//环的长度
public int loopLength(){
Entry fast = this.head;
Entry slow = this.head;
boolean flag = false;//标记
int len = 0;
while(fast != null && fast.next != null){
fast = fast.next.next;
slow = slow.next;
if(slow == fast && flag == true){
break;
}
if(slow == fast && flag == false){
flag = true;//第一次相遇将flag置为true
}
if(flag == true){
len ++;
}
}
return len;
}