U

99. Implement Queue Using Two Stacks

Hard

Problem Description

Implement a queue using two stacks. Make both enqueue and dequeue operations amortized O(1).

Input Format

  • •Line 1: An integer NN (1≤N≤1051 \le N \le 10^5).
  • •Line 2: NN space-separated integers.

Output Format

Print the output values space-separated.

Example 1:
Input:
4
10 20 30 40
Output:
10 20 30 40
Explanation: Processing queue elements.
Example 2:
Input:
1
5
Output:
5
Explanation: Single element queue.
Example 3:
Input:
3
1 2 3
Output:
1 2 3
Explanation: FIFO sequence.
Constraints:
  • Standard integer bounds: 32-bit signed integer or input range [1, 10^5].
  • Time complexity target: O(N) or O(N log N) where applicable.
  • Auxiliary space target: O(1) or minimal auxiliary memory.
Follow up:Can this algorithm be adapted to an online streaming setting where the entire input cannot be held in memory simultaneously?
1,180 Online