剑指offer--用两个栈实现队列

原创 2017年04月15日 20:55:08

用两个栈来实现一个队列,完成队列的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.isEmpty() && stack2.isEmpty()){
            return 0;
        }
        if ( stack2.isEmpty()){
            while(!stack1.isEmpty()){
                stack2.push(stack1.pop());
            }
        }
        return stack2.pop();
    }
}
版权声明:本文为博主原创文章,若需转载,请注明http://blog.csdn.net/qq_30091945

相关文章推荐

算法提高 队列操作

问题描述   队列操作题。根据输入的操作命令,操作队列(1)入队、(2)出队并输出、(3)计算队中元素个数并输出。 输入格式   第一行一个数字N。   下面N行,每行第一个数字为操作命令(...

TCP/IP 知识点总结

网络互联基础 一、OSI七层协议     OSI(Open System interconnection)开放系统互连参考模型     ISO(International Standards O...

《剑指offer》面试题七 用两个栈实现队列

原题地址 http://ac.jobdu.com/problem.php?pid=1512 题目描述: 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int...

剑指offer——用两个栈实现队列

两个栈实现一个队列 import java.util.Stack; public class Demo07 { Stack stack1 = new Stack(); Stac...

剑指offer_面试题7_用两个栈实现队列(让我熟悉了类模板的使用)

题目:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。 template class ...

剑指offer07题两个栈实现一个队列(c语言)

题目:用两个栈实现一个队列,队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入节点和在队列头部删除节点。 实现原理如下: 1:定义两个栈,...

剑指Offer----面试题七:用两个栈实现队列

题目: 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。 template class CQu...

剑指offer两个栈实现队列的c++写法(九度1512)

用两个栈(Stack)实现一个队列(Queue) 方法如下: 入队时,将元素压入s1。出队时,判断s2是否为空,如不为空,则直接弹出s2栈顶元素;如为空,则将s1的元素逐个“倒入”s2,把s2栈顶元...
  • ys1130
  • ys1130
  • 2013年11月03日 11:11
  • 380

剑指offer----用两个栈实现队列

用两个栈实现一个队列,分别完成在队列尾部插入节点和在队列头部删除节点的功能 思路: (1)队列是一种“先进先出”的数据结构,而栈是“先进后出”的数据结构,现在要用两个栈实现队列的出队和入队功能。 (2...
  • snow_7
  • snow_7
  • 2016年06月20日 16:11
  • 132

剑指offer面试题7——用两个栈实现队列

package offer7; import common.Stack; /** * 用两个栈实现一个队列 * @author chibozhou */ public class Queue...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:剑指offer--用两个栈实现队列
举报原因:
原因补充:

(最多只允许输入30个字)