两步利用快慢指针判断是否存在环——如果快指针最后指向NULL,则不存在环,如果快慢指针相遇则存在环。
代码如下:
//
// Created by jt on 2020/9/23.
//
class Solution {
public:
bool hasCycle(ListNode *head) {
if(!head) return false;
ListNode *fast = head, *slow = head;
while(fast && fast->next) {
fast = fast->next->next;
slow = slow->next;
if (fast == slow) return true;
}
return false;
}
};
京公网安备 11010502036488号