Leetcode 141 Solution

This article provides solution to leetcode question 141 (linked-list-cycle)

https://leetcode.com/problems/linked-list-cycle

Solution

/** * 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) { if (head == NULL) return false;
ListNode* p1 = head; ListNode* p2 = head;
while (p1 && p2) { p1 = p1->next;
p2 = p2->next; if (p2 != NULL) p2 = p2->next;
if (p1 == p2 && p1 != NULL) return true; }
return false; } };