Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int delete_doctor(void) {
- if (head == nullptr) {
- cout << "The list is empty\n";
- return 0;
- }
- cout << "Enter the ID of the doctor you want to delete:\n";
- int val;
- cin >> val;
- if (head->key == val) {
- if (head->next == nullptr) {
- delete(head);
- head = tail = nullptr;
- return 1;
- }
- doctor_node *temp = head;
- head = head->next;
- delete(temp);
- return 1;
- }
- else {
- doctor_node *current = head;
- doctor_node *prev = current;
- while ((current->key != val) && (current->next != nullptr)) {
- prev = current;
- current = current->next;
- }
- if ((current->key != val) && (current->next == nullptr)) {
- cout << "Doctor not found\n";
- return 0;
- }
- else if ((current->key == val) && (current->next == nullptr)) {
- tail = prev;
- prev->next = nullptr;
- delete(current);
- return 1;
- }
- else {
- prev->next = current->next;
- delete(current);
- return 1;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement