用栈实现一个队列
题目:用栈实现一个队列
class QueueWithStack{private:stack<int> input;stack<int> output;public:int dequeue();//出队列void enqueue(int);//入队列
};void QueueWithStack::enqueue(int value)
{input.push(value);
}int QueueWithStack::dequeue()
{//如果输出栈为空,则把input中的依次取出放入outputif(output.empty()){while(!input.empty()){int val = input.top();input.pop();output.push(val); }}//output此时已不为空int val = output.top();output.pop();return val;
}