Question: Question 2 - 30 pts) In this question, you will write a code/function to swap the minimum and maximum data values of the nodes in






Question 2 - 30 pts) In this question, you will write a code/function to swap the minimum and maximum data values of the nodes in a singly linked list-based implementation of the List ADT. You are given the code for the singly linked list-based implementation of the List ADT along with a main function that creates an IntegerList (an object of class List) and fills it up with random integers in the range [1...maxValue]. The initial contents of the IntegerList are printed. The main function then calls the Swap MinMaxData(List) function and passes the Integer List as the argument. In the SwapMinMaxData(List list) function, the parameter list is scanned once from the head node to the last data node and as part of this process, the addresses of the nodes with the minimum and maximum data values are identified. Using the addresses of the two nodes, the data (i.e., the minimum and maximum values) of these two nodes are then swapped. The final contents of the IntegerList are printed after the call to the SwapMinMaxData(List) function. The SwapMinMaxData(List) function should be implemented in O(n) time, where n is the number of elements in the list. You would test run your code with maxValue as 50 and listSize as 10 passed as inputs. Take a screenshot of the output. A sample output is shown below (7 and 46 are respectively the minimum and maximum data values): Enter the maximum value in the list: 50 Enter the size for the list: 10 Before min-max swap 13 11 9 30 23 7 46 12 43 7 After min-max swap 13 11 9 30 23 46 7 12 43 7 void setNextNodePtr (Nader nodcPtr #include
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
