面试题 9. 用两个栈实现队列

题目描述

题目:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。

解答过程

import java.util.Stack;
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(stack1.empty()&&stack2.empty()){
            throw new RuntimeException("Queue is empty!");
        }
        if(stack2.empty()){
            while(!stack1.empty()){
                stack2.push(stack1.pop());
            }
        }
        return stack2.pop();
    }
}

最新文章

  1. 【转载】HTTP 错误 500.19 - Internal Server Error
  2. MMORPG大型游戏设计与开发(客户端架构 part1 of vegine)
  3. register_shutdown_function 函数详解
  4. Zepto源码
  5. 二叉树学习笔记之二叉查找树(BSTree)
  6. 调用webservice 417
  7. 剑指offer系列45---和为s的两个数字
  8. TortoiseGit和Git操作git@osc简要说明
  9. UVA 11401 - Triangle CountingTriangle Counting 数学
  10. sql的内连接 左外连接 右外连接 全外连接等连接查询的关系图
  11. String.Format格式说明
  12. gdb 调试c/c++的一些小技巧
  13. Android系统移植与驱动开发——第七章——LED驱动
  14. 【USACO 3.2.1】阶乘
  15. FpSpread添加表头(列名)标注
  16. cocos2d-x坐标系
  17. KMP 算法 学习 整理
  18. Java ORM Hibernate 入门笔记
  19. Android破解学习之路(十六)—— dll破解的IL指令
  20. 奇怪吸引子---LuChen

热门文章

  1. 基于jQuery UI的调色板插件推荐colorpicker
  2. JVM之字节码执行引擎
  3. c# 事实证明,abstract类除了不能用new实例化和类没什么区别
  4. Html5 面试题汇总
  5. Bat 命令相关
  6. Item 3 ------单例模式的几种实现方式,及优缺点
  7. 【BZOJ4236】JOIOJI [DP]
  8. 【vijos】P1083 小白逛公园
  9. 【BZOJ】1726 [Usaco2006 Nov]Roadblocks第二短路
  10. ios的app,有新版本时必须先更新。