ListNode *fast=head;
ListNode *slow=head;
while(fast!=NULL&&fast->next!=NULL)
{
fast=fast->next->next;;
slow=slow->next;
if(fast==slow) //关键点,从相遇开始重新分配起始点
{
ListNode *fast2=fast;
ListNode *slow=head;
while(fast2!=slow)
{
fast2=fast2->next;
slow=slow->next;
}
return fast2;
}
}
return NULL;
代码随想录 跟随笔记 环形链表
最新推荐文章于 2024-08-06 13:52:03 发布