题解 | #JZ5用两个栈实现队列#

用两个栈实现队列

http://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6

考察 栈

本题要点: 只有输出栈空的时候,才允许将输入栈的数据pop过去。

逻辑问题!! 想明白了。

public class Solution {
    Stack<Integer> stack1 = new Stack<Integer>();
    Stack<Integer> stack2 = new Stack<Integer>();

    public void push(int node) {
        stack1.push(node);
    }

    public int pop() {
        if(stack2.isEmpty()){ //只有输出栈为空,才能对外实现队列!
            while(!stack1.isEmpty()){
              stack2.push(stack1.pop());
            }
        }
         return stack2.pop();

    }
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务