java,快慢指针
public ListNode EntryNodeOfLoop(ListNode pHead) {
if(pHead==null||pHead.next==null||pHead.next.next==null){
return null;
}
ListNode fast=pHead.next.next,slow=pHead.next;
while(fast!=slow){
if(fast==null){
return fast;
}
else{
fast=fast.next.next;
slow=slow.next;
}
}
fast=pHead;
while(fast!=slow){
fast=fast.next;
slow=slow.next;
}
return fast;
}
}
仅供各位小伙伴参考吧,我也是初学者