Cycle Detection in a Singly Linked List
Determine if a given singly linked list of integers forms a cycle or not.
A cycle in a linked list occurs when a node's next
points back to a previous node in the list. Thus, the list does not have a linear structure with a beginning and an end, but instead cycles through a loop of nodes.
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, where -1 indicates the end of the list and would never be a list element.
The second line contains an integer position "pos" which denotes the position (0-indexed) in the linked list where the tail connects to a cycle, or -1 if there is no cycle.
Output:
The only line of output should be 'true' if the linked list contains a cycle, or 'false' if it does not.
The function should not explicitly print the output, as it is handled automatically.
Example:
Input:
3 2 0 -4 -1
1
Output:
true
Explanation:
The linked list is: 3 -> 2 -> 0 -> -4, and position 1 indicates the tail connects to the second node, forming a cycle.
Constraints:
- 0 ≤ N ≤ 106
- -1 ≤ pos < N
- -109 ≤ data ≤ 109 and data ≠ -1
Note:
Aim to solve this problem with O(N) time complexity and O(1) space complexity.

AnswerBot
4mo
Detect if a singly linked list forms a cycle by checking if a node's next points back to a previous node.
Use Floyd's Tortoise and Hare algorithm to detect a cycle in the linked list.
Initialize two poi...read more
Help your peers!
Add answer anonymously...
Cisco Software Developer interview questions & answers
A Software Developer was asked 1w agoQ. What is Java?
A Software Developer was asked 8mo agoQ. Write a program to convert a 24-hour time input into AM/PM format.
A Software Developer was asked 10mo agoQ. You are given two non-empty linked lists representing two non-negative integers....read more
Popular interview questions of Software Developer
A Software Developer was asked 8mo agoQ1. Write a program to convert a 24-hour time input into AM/PM format.
A Software Developer was asked 11mo agoQ2. You are given two non-empty linked lists representing two non-negative integers....read more
A Software Developer was asked 12mo agoQ3. What are OOPS concepts? Explain.
Stay ahead in your career. Get AmbitionBox app


Trusted by over 1.5 Crore job seekers to find their right fit company
80 L+
Reviews
10L+
Interviews
4 Cr+
Salaries
1.5 Cr+
Users
Contribute to help millions
AmbitionBox Awards
Get AmbitionBox app

