this program appends new node to the existing list (that isit inserts new node in the existing list at the end)and it makes the link field of the newly inserted node point to the start or first node of the list this ensures that the link field of the last node always points to the starting node of the list notes sorting and reversing linked list to sort linked listfirst we traverse the list searching for the node with minimum data value then we remove that node and append it to another list which is initially empty we repeat this process with the remaining list until the list becomes emptyand at the endwe return pointer to the beginning of the list to which all the nodes are movedas shown in figure figure sorting of linked list null start list to be sorted null start null after the first pass to reverse listwe maintain pointer each to the previous and the next nodethen we make the link field of the current node point to the previousmake the previous equal to the currentand the current equal to the nextas shown in figure figure linked list showing the previouscurrentand next nodes at some point during reversal process null prev curr next thereforethe code needed to reverse the list isprev nullwhile (curr !nullnext curr->linkcurr -link prevprev currcurr next merging two sorted lists merging of two sorted lists involves traversing the given lists and comparing the data values stored in the nodes in the process of traversing lovely professional university