Given a linked list of N nodes. The task is to check if the the linked list has a loop. Linked list can contain self loop.
First line of input contains number of testcases T. For each testcase, first line of input contains length of linked list and next line contains the data of linked list.
For each testcase, print "True", if linked list contains loop, else print "False".
The task is to complete the function detectloop() which contains reference to the head as only argument. This function should return 1 if linked list contains loop, else return 0.
Challenge : Try to solve the problem with constant space and Linear time complexity.
1 <= T <= 100
1 <= N <= 104
1 <= Data on Node <= 103
1 3 4
1 8 3 4
Testcase 1: In above test case N = 3. The linked list with nodes N = 3 is given. Then value of x=2 is given which means last node is connected with xth node of linked list. Therefore, there exists a loop.
Testcase 2: For N = 4 ,x = 0 means then lastNode->next = NULL, then the Linked list does not contains any loop.
If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.