1
2
3
4
5
6
use std::collections::VecDeque;

pub struct Stack<T>(VecDeque<T>, VecDeque<T>);

// use two queues for a stack.
// enqueue to the first stack, dequeue off the second.