美文网首页
2018-07-09栈和队列的概念

2018-07-09栈和队列的概念

作者: 菩灵 | 来源:发表于2018-07-09 12:05 被阅读6次

链表的作用?
顺序表和链表都是线性表,存线性的数据;顺序表连续存放,链表存放是离散的。
那么对于线性数据如何利用呢?——栈

栈(stack),有些地方称为堆栈,是一种容器,可存入数据元素、访问元素、删除元素,它的特点在于只能允许在容器的一端(称为栈顶端指标,英语:top)进行加入数据(英语:push)和输出数据(英语:pop)的运算。没有了位置概念,保证任何时候可以访问、删除的元素都是此前最后存入的那个元素,确定了一种默认的访问顺序。

由于栈数据结构只允许在一端进行操作,因而按照后进先出(LIFO, Last In First Out)的原理运作。

不用理解如何存放,只要关心怎么使用。

栈的使用特点:后进先出

链表进行修改,只支持尾部添加删除,就成为了栈
顺序表和链表(如何存放)解决了数据如何存放的问题,经过特定设置可成为栈(如何操作)
什么时候用栈?
——比如1*(2+3)的计算,Python解释器从左向右做,可以用栈的方式解析

队列

队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。

队列是一种先进先出的(First In First Out)的线性表,简称FIFO。允许插入的一端为队尾,允许删除的一端为队头。队列不允许在中间部位进行操作!假设队列是q=(a1,a2,……,an),那么a1就是队头元素,而an是队尾元素。这样我们就可以删除时,总是从a1开始,而插入时,总是在队列最后。这也比较符合我们通常生活中的习惯,排在第一个的优先出列,最后来的当然排在队伍最后。

队列

什么时候用队列?——用到树,深度遍历的时候用到队列

相关文章

  • 2018-07-09栈和队列的概念

    链表的作用?顺序表和链表都是线性表,存线性的数据;顺序表连续存放,链表存放是离散的。那么对于线性数据如何利用呢?—...

  • 数据结构——栈和队列

    用数组实现栈和队列 用栈实现队列 用队列实现栈 栈和队列的经典算法题最小间距栈宠物收养所 数组实现栈和队列 用数组...

  • 栈和队列

    用栈定义队列(出入栈) 用队列定义栈(数据队列和辅助队列)

  • 简单数据结构(队列 栈 树 堆 )

    基础知识 基本概念 常见数据结构 栈和队列 栈Stack 队列Queue 树和堆 树的定义 树(tree)是包含n...

  • 队列

    1,队列的概念 队列和栈都是操作受限的线性表,不一样的是栈后进先出,而队列相反先进先出。 队列:使用数组实现则表示...

  • Algorithm小白入门 -- 队列和栈

    队列和栈队列实现栈、栈实现队列单调栈单调队列运用栈去重 1. 队列实现栈、栈实现队列 队列是一种先进先出的数据结构...

  • 栈和队列

    栈和队列 本质上是稍加限制的线性表 栈和队列定义 栈顺序栈定义 链栈结点定义 队列顺序队列 链队列链队类型定义 链...

  • 队列、栈、链表、树(堆)

    一、概念 (1) 栈(Stack)栈(Stack)和队列(Queue)是两种操作受限的线性表栈的插入和删除操作只允...

  • 队列 - Queue

    基本概念 队列和栈类似,不同的是,先进队列的元素,最先从队列出去。 实现 通过链表实现队列 Java中,队列是一个...

  • 算法-栈和队列算法总结

    栈和队列算法总结 1 模拟 1.1 使用栈实现队列 1.2 使用队列实现栈 2 栈的应用 2.1 栈操作 2.2 ...

网友评论

      本文标题:2018-07-09栈和队列的概念

      本文链接:https://www.haomeiwen.com/subject/wjbzuftx.html