文章目录
前言
1.什么是链表环?
如图:
提示:以下是本篇文章正文内容,下面案例可供参考
一、题目
二、解题
1.思考
slow每次移动一次,而fast每次移动两次:
每次先移动slow,然后再移动fast
直到slow==fast为链表有环
2.实现
代码如下:
bool hasCycle(struct ListNode *head) {
struct ListNode *slow=head,*fast=head;
while(fast&&fast->next)
{
slow=slow->next;
fast=fast->next->next;
if(fast==slow)
{
return true;
}
}
return false;
}