Created
February 1, 2017 19:49
-
-
Save Siunami/a6f97980f84ea83bb2c982903d11642a to your computer and use it in GitHub Desktop.
Merge_two_queues function
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Queue Queue::merge_two_queues(Queue & q){ | |
NodePointer queue1 = myFront; | |
NodePointer queue2 = q.myFront; | |
Queue newQueue; | |
while (queue1 != NULL || queue2 != NULL){ | |
if (queue1 == NULL){ | |
newQueue.enqueue(queue2->data); | |
queue2 = queue2->next; | |
} else if (queue2 == NULL) { | |
newQueue.enqueue(queue1->data); | |
queue1 = queue1->next; | |
} else if (queue1->data == queue2->data) { | |
newQueue.enqueue(queue1->data); | |
newQueue.enqueue(queue2->data); | |
queue1 = queue1->next; | |
queue2 = queue2->next; | |
} else if (queue1->data < queue2->data) { | |
newQueue.enqueue(queue1->data); | |
queue1 = queue1->next; | |
} else if (queue1->data > queue2->data) { | |
newQueue.enqueue(queue2->data); | |
queue2 = queue2->next; | |
} | |
} | |
return newQueue; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment