Inserting a Node in Sorted List
Procedure to insert a new node in a sorted linked list.
Procedure :
void insert(struct node *ptr, int data) {
// Creating a node
struct node *newNode;
newNode = (struct node *)malloc(sizeof(struct node));
newNode -> data = data;
// If there are no nodes or first node data is greater
if (head == NULL || head -> data > data) {
newNode -> next = head;
head = newNode;
}
// Inserting at correct position
else {
while (ptr -> next != NULL && ptr -> next -> data < data) {
ptr = ptr -> next;
}
newNode -> next = ptr -> next;
ptr -> next = newNode;
}
}Last updated