Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

(a) What values are returned during the following sequence of queue opera- tions

ID: 3904591 • Letter: #

Question

(a) What values are returned during the following sequence of queue opera- tions, if executed on an initially empty queue? enqueue(5), enqueue(3), dequeue) enqueue(2), enqueue(8), dequeue(), dequeue(), enqueue(9), enqueue(1), de- queue), enqueue(7), enqueue(6), dequeue), dequeue0, enqueue (4), dequeue(), dequeue (b) WhatvaluesarereturnedduringthefollowingsequenceofdequeADTop- erations, on initially empty deque? add first(4), add last(8), add last(9), add first(5), back), delete first), delete last), add last (7), first0, last(), add last(6), delete first(), delete first()

Explanation / Answer

This question is programming language independent. And the sequencce of operations having their standard implementations:

enqueue opertions returns success on successfull insertion in form of any data representing true value. While, dequeue operation returns the deleted element. Similar thing happens with the first and last insertion add/delete operation in ADT queue.

Hence:

part (a):

3 (dequed element)

2 (dequed element)

9->8

1->9->8

8 (dequed element)

7->1->9

6->7->1->9

9 (dequed element)

1 (dequed element)

4->6->7

7 (dequed element)

6 (dequed element) ===============> This leaves only 4 in the queue

part (b):

4
8->4
9->8->4
9->8->4->5
9 (back() examines the last element of the list)
5
9
7->8->4
4
7
6->7->8->4
4
8 =========> This leaves the remaining list as (last) 6->7 (first)

* first and last returns the first and last element of the deque

Hope this helps!