Node* find_in_list(Node* head)
{
if(head==NULL||head->next==NULL) return NULL;
Node* quick = head->next;
Node* slow = head->next;
while(slow!=quick) //找到第一次相遇的结点
{
quick=quick->next->next;
slow=slow->next;
if(quick->next->next==NULL) return NULL;
}
quick=head;
while(quick!=slow) //一个指针从头开始走一个从相遇的结点开始,最后相遇的地方就是入口
{
quick=quick->next;
slow=slow->next;
}
return quick;
}
找出环形链表的入口
最新推荐文章于 2024-02-12 20:52:20 发布