A linked list is said to contain a cycle if any node is visited more than once while traversing the list. Given a pointer to the head of a linked list, determine if it contains a cycle. If it does,...


A linked list is said to contain a cycle if any node is visited more than once while traversing the list. Given a pointer to the head of a linked list, determine if it contains a cycle. If it does, return 1. Otherwise, return 0.



Example: head refers to the list of nodes 1 → 2 → 3 → 1 → NULL. There is a cycle where node 3 points back to node 1, so return 1.


Function Description: Complete the has cycle function provided in the moodle assignment folder. It has the following parameter: • SinglyLinkedListNode pointer head: a reference to the head of the list.



Returns: • int: 1 if there is a cycle or 0 if there is not.


Note: if the list is empty, head will be null.


Input Format: The code stub reads from stdin and passes the appropriate argument to your function. The custom test cases format will not be described for this question due to its complexity. Expand the section for the main function and review the code if you would like to figure out how to create a custom case.


Constraints: List size can be minimum 0 and maximum 1000.


Sample Input: References to each of the following linked lists in the figure above are passed as arguments to your function: 1


Sample Output: 1 0


Explanation: • The first list has no cycle, so return 0. • The second list has a cycle, so return 1.



Jun 05, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here