1,堆栈是一种特殊的链表结构,也是一种线性表。 2,堆栈数据结构只允许数据自有序列表做输入输出操作。 3,堆栈的入口和出口是同一个,所以具有先进后出的特征。 4,堆栈的应用举例: 子程序的调用:在跳往子程序之前,会将下一个指定的地址存到堆栈中,直到子程序执行完毕之后,会取出地址,以回到原来的程序中. ...
分类:
其他好文 时间:
2018-09-06 12:41:12
阅读次数:
188
1.队列先进先出,栈先进后出。 2. 对插入和删除操作的"限定"。 栈是限定只能在表的一端进行插入和删除操作的线性表。 队列是限定只能在表的一端进行插入和在另一端进行删除操作的线性表。 从"数据结构"的角度看,它们都是线性结构,即数据元素之间的关系相同。但它们是完全不同的数据类型。除了它们各自的基本 ...
分类:
其他好文 时间:
2018-09-04 23:32:58
阅读次数:
188
【题目】 编写一个类,用两个栈实现队列,支持队列的基本操作(add、poll、peek)。 【解答】? 栈的特点是先进后出,而队列的特点是先进先出。我们用两个栈正好能把顺序反过来实现类似队列的操作。 具体实现上,是把一个栈作为压入栈,在压入数据时只往这个栈中压入,记为stackPush;另一个栈只作 ...
分类:
其他好文 时间:
2018-09-02 18:42:27
阅读次数:
153
对于一颗二叉树,深度优先搜索(Depth First Search)是沿着树的深度遍历树的节点,尽可能深的搜索树的分支。以上面二叉树为例,深度优先搜索的顺序为:ABDECFG。怎么实现这个顺序呢 ?深度优先搜索二叉树是先访问根结点,然后遍历左子树接着是遍历右子树,因此我们可以利用堆栈的先进后出的特点 ...
分类:
其他好文 时间:
2018-08-30 12:26:05
阅读次数:
188
栈:stl的一种容器,遵循先进后出原则,,只能在栈的顶部操作,就像放盘子一样,洗好的盘子叠在上面,需要用时也是先从顶部拿。不允许被遍历,没有迭代器 基本操作: 1.头文件#include<stack> 2.top() 返回栈顶元素 3.pop() 弹出栈顶元素 4.empty()若栈空返回true, ...
分类:
其他好文 时间:
2018-08-29 19:56:48
阅读次数:
149
Stack(堆栈)与Queue(队列)前者先进后出,后者是先进先出.Stack也是通过数组实现的,而非链表 stack堆栈: queue队列: Deque是queue的子接口,定义了“双端队列”,从队列的两端都可以入栈(offer)出栈(poll) queue Deque linkedList三者的 ...
分类:
其他好文 时间:
2018-08-26 22:06:24
阅读次数:
126
栈:先进后出(底层用数组实现) 栈只有一个开口,先进去的就到最底下,后进来的就在前面,要是拿出去的话,肯定是从开口端拿出去, 所以说先进后出,后进先出。 数据结构: java实现栈(基于数组): main()方法中 3是最后push()进去 是最先pop()出来,先进后出,后进先出。 队列:先进先出 ...
分类:
其他好文 时间:
2018-08-26 10:30:32
阅读次数:
261
队列 from multiprocessing import Queue 队列: 先进先出(First In First Out 简称 FIFO)/// 栈:先进后出(First In Last Out 简称 FILO) Queue 方法介绍 : 其他方法: 进程间通信的队列 生产者消费者模型 主要 ...
分类:
编程语言 时间:
2018-08-23 19:37:00
阅读次数:
158
1.生产者消费者模型 主要是为解耦 借助队列来实现生产者消费这模型 栈:先进后出(First In Last Out 简称:FILO) 队列:先进先出(FIFO) import queue from multiprocessing import Queue 借助Queue解决生产者消费这模型队列是安 ...
分类:
编程语言 时间:
2018-08-22 19:34:40
阅读次数:
226
对于一颗二叉树,深度优先搜索(Depth First Search)是沿着树的深度遍历树的节点,尽可能深的搜索树的分支。以上面二叉树为例,深度优先搜索的顺序 为:ABDECFG。怎么实现这个顺序呢 ?深度优先搜索二叉树是先访问根结点,然后遍历左子树接着是遍历右子树,因此我们可以利用堆栈的先进后出的特 ...
分类:
其他好文 时间:
2018-08-18 00:58:31
阅读次数:
195