Implement a stack S using two queues Q1 and Q2 so that operations PUSH (S, X) and POP(S, Y), where S is supposedly a stack and X is the element to be inserted into S and Y the element deleted from S, are worked upon by the queues that operate together as a stack. Assume that the ADT operations of ENQUEUE, DEQUEUE and EMPTYQUEUE are only available for the queues. Demonstrate the working of your method on a list {a, b, c}, which is to be operated upon as a stack by the queues Q1 and Q2.

icon
Related questions
Question

Implement a stack S using two queues Q1 and Q2 so that operations PUSH (S,
X) and POP(S, Y), where S is supposedly a stack and X is the element to be inserted
into S and Y the element deleted from S, are worked upon by the queues that operate
together as a stack. Assume that the ADT operations of ENQUEUE, DEQUEUE and
EMPTYQUEUE are only available for the queues.
Demonstrate the working of your method on a list {a, b, c}, which is to be
operated upon as a stack by the queues Q1 and Q2.

Expert Solution
steps

Step by step

Solved in 5 steps with 3 images

Blurred answer
Knowledge Booster
Heapsort
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, data-structures-and-algorithms and related others by exploring similar questions and additional content below.