Linked List Cycle

我是用龟兔赛跑法解决的,其他人的答案差不多,表述上有差别。有的方法改了链表,我不太赞成使用:

bool hasCycle(ListNode *head) {
if(head == NULL) return 0;
ListNode* p=head;
ListNode* q=head;
while(p->next!=NULL) {
p=p->next;
if(p->next!=NULL) {
q=q->next;
p=p->next;
if(p==q) return 1;
continue;
}
else{
return 0;
}
}
return 0;
}

posted @ 2016-04-14 22:03  李杨阳  阅读(115)  评论(0)    收藏  举报