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

原创 2018年04月16日 20:23:01

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

class Solution
{
public:
	//进队:直接将数据压入到栈1 
    void push(int node) {
        stack1.push(node); 
    }
	//出队:若栈2为空,将栈1全部出栈压入栈2,否则栈2直接出栈 
    int pop() {
        if(stack2.empty()){
        	while(!stack1.empty)
        	{
        		stack2.push(stack1.top());
        		stack1.pop();
			}
		} 
		int t=stack2.top();
		stack2.pop();
		return t;
    }

private:
    stack<int> stack1;
    stack<int> stack2;
};

Python算法实战视频课程--队列的应用

队列是程序设计中被广泛使用的数据结构, 很多问题都满足队列"先进先出"的特性(例如, 广度有限搜索), 本课程以实际应用为主, 先了解队列的基本特性, 操作接口以及学习使用python标准库中的deque, 以多个编程实例带领大家真正学会队列在实际问题中的运用.
  • 2016年05月11日 09:28

实现一堆栈,要求三个操作,Pop,Push,GetMaxValue,时间均为O(1)

问题描述 扩展stack的实现,完成正常的push,pop操作,新增访问最小(或最大)元素的接口Min(),使得push,pop,Min的时间复杂度都是O(1)。 问题分析 拿到这道题,我们最先的思考...
  • sipherhern
  • sipherhern
  • 2016-08-11 23:56:57
  • 1889

[C#]Stack类的实现

Stack的实现必须采用一种基本结构来保存数据。因为再新数据项进栈的时候不需要担心调整表的大小,所以选择用arrayList. using System; using System.Collectio...
  • david_520042
  • david_520042
  • 2016-07-22 21:46:42
  • 1576

C# Stack堆栈类

堆栈是一种后进先出(LIFO)的数据结构。回顾Queue队列类中的货物管理的例子,队列类将先入仓的货物后出仓,但假如有一些实时性非常强的货物,需要后入仓先出仓.       1  创建堆栈 ...
  • lc547913923
  • lc547913923
  • 2014-05-26 15:52:16
  • 2382

push、pop及函数调用约定

push: 把一个32位的操作数压入堆栈中。这个操作导致esp被减4。esp被形象地称为栈顶。我们认为顶部是地址小的区域,那么,压入堆栈中数据越多,这个堆栈也就越堆越高,esp也就越来越小。在3...
  • zang141588761
  • zang141588761
  • 2017-03-24 12:42:51
  • 816

栈的push、pop序列

题目:输入两个整数序列。其中一个序列表示栈的push顺序,判断另一个序列有没有可能是对应的pop顺序。为了简单起见,我们假设push序列的任意两个整数都是不相等的。...
  • kangkanglou
  • kangkanglou
  • 2010-11-30 20:47:00
  • 3849

C#中Stack<T>类的使用及部分成员函数的源码分析

Stack类 StackT> 作为数组来实现。 StackT> 的容量是 StackT> 可以包含的元素数。 当向 StackT> 中添加元素时,将通过重新分配内部数组来根据需要自动增大容量...
  • wangshubo1989
  • wangshubo1989
  • 2015-07-29 16:37:46
  • 2940

用两个栈来实现一个队列,完成队列的Push和Pop操作

最近整理之前自己学习Java时的一些代码笔记,可能都是一些比较基础的Java知识,在这里只是给需要的人参考一下。 题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操...
  • shallynever
  • shallynever
  • 2016-07-30 15:54:20
  • 1251

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

package lianxi; import static org.junit.Assert.*; import java.util.Arrays; import java.ut...
  • u010674768
  • u010674768
  • 2017-04-05 17:30:32
  • 710

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

题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。队列中的元素为int类型。 思路:有两个栈,栈1和栈2.当入栈的时候,我们将它全放进栈1中,当需要出栈的时候,我们将栈1出栈到栈2...
  • lz_94
  • lz_94
  • 2016-03-09 20:20:19
  • 1046
收藏助手
不良信息举报
您举报文章:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
举报原因:
原因补充:

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