思路:定义两个指针起始值为链表的头指针,分别为fast,slow,fast指针要比slow指针移动快一步,如果fast指针首先移动到NULL,则说明链表没有环,如果出现fast==slow的情况则说明链表有环,fast指针比slow指针快了一圈,刚好相遇
void Boollist(Linklist L)
{
Linklist fast=L;
Linklist slow=L;
while(L!=NULL&&fast!=NULL)
{
fast=fast->next->next;
slow=slow->next;
if (slow==fast)
{
printf("链表有环!\n");
break;
}
}
if (fast=NULL)
{
printf("链表无环\n");
}
}