Advertisement
Guest User

Untitled

a guest
Dec 18th, 2017
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.35 KB | None | 0 0
  1.     int delete_doctor(void) {
  2.         if (head == nullptr) {
  3.             cout << "The list is empty\n";
  4.             return 0;
  5.         }
  6.         cout << "Enter the ID of the doctor you want to delete:\n";
  7.         int val;
  8.         cin >> val;
  9.         if (head->key == val) {
  10.             if (head->next == nullptr) {
  11.                 delete(head);
  12.                 head = tail = nullptr;
  13.                 return 1;
  14.             }
  15.             doctor_node *temp = head;
  16.             head = head->next;
  17.             delete(temp);
  18.             return 1;
  19.         }
  20.         else {
  21.             doctor_node *current = head;
  22.             doctor_node *prev = current;
  23.  
  24.             while ((current->key != val) && (current->next != nullptr)) {
  25.                 prev = current;
  26.                 current = current->next;
  27.             }
  28.  
  29.             if ((current->key != val) && (current->next == nullptr)) {
  30.                 cout << "Doctor not found\n";
  31.                 return 0;
  32.             }
  33.             else if ((current->key == val) && (current->next == nullptr)) {
  34.                 tail = prev;
  35.                 prev->next = nullptr;
  36.                 delete(current);
  37.                 return 1;
  38.             }
  39.             else {
  40.                 prev->next = current->next;
  41.                 delete(current);
  42.                 return 1;
  43.             }
  44.         }
  45.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement