Advertisements
Problem Statement
Given a cyclic list with elements as numbers in sorted order, write a function to insert a new element (5) into the cyclic list that maintains the sorted order of the cyclic list. Do not assume that the cyclic list is referenced by its minimal element. A perfectly cyclic list is one where the nth node's 'next' pointer points to the same place as 'head' --
User would get a custom data type as Node. It is defined as
public class Node { public int data; public Node next; }
You are given a function addElement which takes in the head pointer of the cyclic linked list. Complete the function to insert the number 5 such that the sorted order is maintained and return the head node of the modified linked list. You only need to complete this function. The Main and Node classes for storing linked list are already defined, so you will not need to add them. Every time you submit your code it will be compiled and a small suite of tests will be run against your code and you will be shown the results. When you complete the problem a larger suite of tests will be run to test your implementation. If you successfully pass the displayed tests, use your extra time to make sure your code handles other edge cases appropriately.
Input/Output Specs Inputs Specs: The data in test case starts and ends with brackets ( ). Within the brackets lies the following information (Node input1) where input1 is the head pointer of the cyclic linked list. A cyclic linked list i.e. the next of the Last node is the first node , so for {1,2} the Node having 1 would have the next element as 2 and the node with data as 2 the next value would point to 1 Output Specs: You need to return the head node of the modified linked list.
Examples Input values: 2->6
Expected Output value : 2->5->6