Implement Queue by Two Stacks

原创 2016年05月31日 01:18:54

基础知识的考察,补课

public class Queue {
    private Stack<Integer> stack1;
    private Stack<Integer> stack2;

    public Queue() {
       // do initialization if necessary
       stack1 = new Stack<>();
       stack2 = new Stack<>();
    }
    
    public void push(int element) {
        // write your code here
        stack2.push(element);
    }

    public int pop() {
        // write your code here
        if (stack1.isEmpty()) {
            stack2ToStack1();
        }
        return stack1.pop();
    }

    public int top() {
        // write your code here
        if (stack1.isEmpty()) {
            stack2ToStack1();
        }
        return stack1.peek();
    }
    
    private void stack2ToStack1() {
        while (!stack2.isEmpty()) {
            stack1.push(stack2.pop());
        }
    }
}


Stack_Queue 一个数组实现三个栈 @CareerCup

原文: Describe how you could use a single array to implement three stacks. 译文: 你如何只用一个数组实现三个栈...
  • hellobinfeng
  • hellobinfeng
  • 2014年03月01日 11:35
  • 1732

OCJP(1Z0-851) 模拟题分析(六)

Exam : 1Z0-851 Java Standard Edition 6 Programmer Certified Professional Exam 以下分析全都是我自己分析或者参考...
  • xujinsmile
  • xujinsmile
  • 2013年02月10日 21:05
  • 8204

227.Mock Hanoi Tower by Stacks-用栈模拟汉诺塔问题(容易题)

用栈模拟汉诺塔问题 题目 在经典的汉诺塔问题中,有 3 个塔和 N 个可用来堆砌成塔的不同大小的盘子。要求盘子必须按照从小到大的顺序从上往下堆 (如,任意一个盘子,其必须堆在比它大的盘子上面)...
  • Tri_Color_Flag
  • Tri_Color_Flag
  • 2016年09月13日 10:50
  • 1781

Leetcode 232. Implement Queue using Stacks (Easy) (cpp)

Leetcode 232. Implement Queue using Stacks (Easy) (cpp)
  • Niko_Ke
  • Niko_Ke
  • 2016年07月20日 16:35
  • 252

leetcode_Implement Queue using Stacks

1.用栈来实现一个队列,也就是用后进先出的栈实现先进先出的队列 2.这个还是很难想的,但总之还是比用队列来实现栈容易想,大概就是用两个栈stack1和stack2来模拟队列 3.所有的元素都从stac...
  • dfb198998
  • dfb198998
  • 2015年08月07日 09:12
  • 523

232. Implement Queue using Stacks

leetcode 232 - Easy - 剑指offer题目7
  • u010142706
  • u010142706
  • 2016年02月26日 17:33
  • 79

LeetCode 232 Implement Queue using Stacks(用栈来实现队列)(*)

翻译用栈来实现队列的下列操作。push(x) —— 将元素x写入到队列的尾部 pop() —— 从队列首部移除元素 peek() —— 返回队列首部元素 empty() —— 返回队列是否为空注意:你...
  • NoMasp
  • NoMasp
  • 2016年01月20日 21:18
  • 2512

[leetcode] Implement Queue using Stacks

题目链接在此。 Implement the following operations of a queue using stacks. push(x) -- Push element x t...
  • CharlieLincy
  • CharlieLincy
  • 2015年07月31日 15:10
  • 227

[leetcode: Python]232. Implement Queue using Stacks

题目: Implement the following operations of a queue using stacks.push(x) – Push element x to the back...
  • NXHYD
  • NXHYD
  • 2017年05月12日 13:09
  • 187

[232] Implement Queue using Stacks

使用栈实现队列。只能使用栈提供的push, peek/pop, size和empty方法。
  • camlot_
  • camlot_
  • 2016年07月21日 12:46
  • 175
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Implement Queue by Two Stacks
举报原因:
原因补充:

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