【第22期】观点:IT 行业加班,到底有没有价值?

用两个栈来实现一个队列()

原创 2016年08月29日 19:27:01

题目描述

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

package offerppp;

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() {
            while(!stack1.isEmpty()){
                stack2.push(stack1.pop());
            }
            int i = stack2.pop();
            while(!stack2.isEmpty()){
                stack1.push(stack2.pop());
            }
            return i;
        }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

用两个队列实现一个栈

说明如何用两个队列来实现一个栈,并分析有关栈操作的运行时间。 解法: 1.有两个队列q1和q2,先往q1内插入a,b,c,这做的都是栈的push操作。 2.现在要做pop操作,即要得到c,这...

用两个栈实现一个队列的功能

【转】http://hi.baidu.com/liangjw821/blog/item/74c98ed520f299cc51da4b86.html 原题: 用两个栈实现一个队列的功能? 思路: 假设两个栈 A 和B,且都为空。 可以认为栈 A 为提供入队列的功能,栈 B 提供出队列的功能。 入队列: 入栈 A 出队列: 1 如果栈B 不为空,直接弹出栈 B 的数据。 2 如果栈 B 为空 2.1 若A不为空,则依次弹出栈 A 的数据,放入栈 B 中,再弹出栈 B 的数据。 2.1 若A为空,则队列为空。 int enqueue(stack s1,elemt

【面试题】剑指Offer-7-两个栈实现一个队列

题目概述 用两个栈实现一个队列 图解 代码实现 //两个栈实现一个队列 template class QueueBTS { public: void Push(const ...

Stack_Queue 两个栈实现一个队列 @CareerCup

原文: <p style="margin-top: 0px; margin-bottom: 9px; font-family: 'Helvetica Neue',Helvetica,Arial,sans-serif; font-size: 13px; lin

用两个栈来实现一个队列

http://zhedahht.blog.163.com/blog/static/2541117420073293950662/ 题目:某队列的声明如下: templatetypename...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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