Detect Loop in Singly Linked List
Determine if a given singly linked list of integers contains a cycle.
Explanation:
A cycle in a linked list occurs when a node's next points back to a previous node in the list, creating a loop.
For this problem, there is no partial marking; all test cases must be accurately handled.
Input:
The first line of each test case contains the elements of the singly linked list separated by a single space and terminated by -1 (which is not a valid list element).
The second line contains an integer "pos" indicating the 0-indexed position in the linked list where the tail connects. If "pos" is -1, the linked list has no cycle.
Output:
Output 'true' if the linked list has a cycle, or 'false' otherwise.
Explicit printing is not required; it is managed for you.
Example:
Input: [3, 2, 0, -4, -1], pos = 1
Output: true
Constraints:
- 0 <= N <= 106
- -1 <= pos < N
- -109 <= data <= 109 and data ≠ -1
- Time Limit: 1 sec
Note:
Try to solve this problem in O(N) Time Complexity and O(1) Space Complexity.
Be the first one to answer
Add answer anonymously...
Top NetApp Software Developer interview questions & answers
Popular interview questions of Software Developer
Stay ahead in your career. Get AmbitionBox app
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+
Reviews
4 L+
Interviews
4 Cr+
Salaries
1 Cr+
Users/Month
Contribute to help millions
Get AmbitionBox app