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

用两个栈实现队列

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

import java.util.Stack; //将stack1用作加入队列操作,stack2用作出队列操作 //每次入队之前,判断stack2是否为空,若不为空,将stack2出栈加入stack1 //然后再入栈 //每次出队列之前,判断stack1是否为空,若不为空,将stack1出栈加入stack2 //然后再出队列 public class Solution { Stack stack1 = new Stack(); Stack stack2 = new Stack();

public void push(int node) {
        while(!stack2.isEmpty()){
            stack1.push(stack2.pop());
        }
    stack1.push(node);
    
}

public int pop() {
     while(!stack1.isEmpty()){
            stack2.push(stack1.pop());
        }
    return stack2.pop();

}

}

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-10 15:24
高考前一晚在OPPO手机上设置了早上5:30的闹钟,然而闹钟并未按时响起。直到妈妈做好早餐后,在6:27打开手机才发现闹钟未触发,“气得早上饭都没吃”。资本家你赢了
永不遗忘:我来解释一下 :Oppo 手机晚上两点会自动进行系统更新,这个系统更新会重置掉所有设置好的闹钟,而且他也不会告诉你,而且只有 Oppo 会这样,华为苹果小米三星都不会
点赞 评论 收藏
分享
asdasdasdasdas:19岁,不容易啊可能升个本会好点,现在学历歧视太严重了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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