Sort linked list which is already sorted on absolute values - GeeksforGeeks
/*
http://www.practice.geeksforgeeks.org/problem-page.php?pid=700234
http://www.geeksforgeeks.org/sort-linked-list-already-sorted-absolute-values/
*/
/* The structure of the Linked list Node is as follows:
struct Node
{
Node* next;
int data;
}; */
void sortList(Node** head)
{
Node *prev = (*head);
Node *current = (*head)->next;
while(current != NULL){
if(current->data < prev->data){
prev->next = current->next;
current->next = (*head);
*head = current;
current = prev;
}else{
prev = current;
}
current = current->next;
}
}