2023.9.5
环形链表相遇问题,可以定义一对快慢指针,快指针每次向前走两步,慢指针每次向前走一步,如果链表是环形的最终一定会相遇。 代码如下:
/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:bool hasCycle(ListNode *head) {ListNode* fast = head;ListNode* slow = head;while(fast && fast->next && fast->next->next){fast = fast->next->next;slow = slow->next;if(fast == slow) return true;}return false;}
};