定义快慢指针来解决该问题
核心代码如下
struct Node{
int index;
Node* next;
};
Node* head=NULL;
bool isCir(Node *head){
Node* kuai=head;
Node* man=head;
while(1){
if(kuai->next==NULL||kuai->next->next==NULL)return false;//此时可判为有出口
if(kuai->next->next->index==man->next->index)return true;
kuai=kuai->next->next;
man=man->next;
}
}