- bool check(const node* head)
- ...{} //return false : 无环;true:
- 有环一种O(n)的办法就是:
- 设两个指针,一个每次递增一步,一个每次递增两步,
- 如果有环的话两者必然重合,反之亦然
- bool check(const node* head)
- {
- if(head==NULL) return false;
- node *low=head, *fast=head->next;
- while(fast!=NULL && fast->next!=NULL)
- {
- low=low->next;
- fast=fast->next->next;
- if(low==fast)
- return true;
- }
- return false;
- }
判断链表是否有环
最新推荐文章于 2024-04-22 20:33:24 发布