Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.80 KB | None | 0 0
  1. void insertAfter(struct Node* prev_node, int new_data)
  2. {
  3. /*1. check if the given prev_node is NULL */
  4. if (prev_node == NULL) {
  5. printf("the given previous node cannot be NULL");
  6. return;
  7. }
  8.  
  9. /* 2. allocate new node */
  10. struct Node* new_node = (struct Node*)malloc(sizeof(struct Node));
  11.  
  12. /* 3. put in the data */
  13. new_node->data = new_data;
  14.  
  15. /* 4. Make next of new node as next of prev_node */
  16. new_node->next = prev_node->next;
  17.  
  18. /* 5. Make the next of prev_node as new_node */
  19. prev_node->next = new_node;
  20.  
  21. /* 6. Make prev_node as previous of new_node */
  22. new_node->prev = prev_node;
  23.  
  24. /* 7. Change previous of new_node's next node */
  25. if (new_node->next != NULL)
  26. new_node->next->prev = new_node;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement