Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void insertAfter(struct Node* prev_node, int new_data)
- {
- /*1. check if the given prev_node is NULL */
- if (prev_node == NULL) {
- printf("the given previous node cannot be NULL");
- return;
- }
- /* 2. allocate new node */
- struct Node* new_node = (struct Node*)malloc(sizeof(struct Node));
- /* 3. put in the data */
- new_node->data = new_data;
- /* 4. Make next of new node as next of prev_node */
- new_node->next = prev_node->next;
- /* 5. Make the next of prev_node as new_node */
- prev_node->next = new_node;
- /* 6. Make prev_node as previous of new_node */
- new_node->prev = prev_node;
- /* 7. Change previous of new_node's next node */
- if (new_node->next != NULL)
- new_node->next->prev = new_node;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement