题解 | #用两个栈实现队列#
用两个栈实现队列
http://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6
栈的特性是 先进后出,后进先出
队列的特性是 先进先出
栈只要倒一次就能实现和队列一样的效果
public void push(int node) {
//入队直接入栈1
stack1.push(node);
}
public int pop() {
//出队判断栈2是否为空,不为空直接返回,为空将栈1全部入栈2 再返回栈2顶元素
if(stack2.isEmpty())
{
while(!stack1.isEmpty())
{
stack2.push(stack1.pop());
}
}
return stack2.pop();
}
查看6道真题和解析