package com.aaront.exercise.basic;
import com.aaront.exercise.generic.GenericQueue;
public class StackWithTwoQueues {
private GenericQueue<Integer> queue1 = new GenericQueue<>();
private GenericQueue<Integer> queue2 = new GenericQueue<>();
public void push(int data) {
queue1.enQueue(data);
}
public int pop() {
while (queue1.size() != 1) {
queue2.enQueue(queue1.deQueue());
}
int element = queue1.deQueue();
while (!queue2.isEmpty()) {
queue1.enQueue(queue2.deQueue());
}
return element;
}
}