题解 | #判断链表中是否有环#
判断链表中是否有环
https://www.nowcoder.com/practice/650474f313294468a4ded3ce0f7898b9
#include <stdbool.h>
/**
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
/**
*
* @param head ListNode类
* @return bool布尔型
*/
bool hasCycle(struct ListNode* head ) {
// write code here
if(head == NULL)
{
return false;
}
struct ListNode* slow = head;//慢指针
struct ListNode* fast = head;//快指针
while(fast!=NULL && fast->next!=NULL)
{
slow = slow->next;//走一步
fast = fast->next->next;//走两步
if(slow == fast)//判断是否有环
{
return true;
}
}
return false;
}
