先进先出算法_数据结构与算法之初识栈与队列
栈和队列
学习目标
本节我们将初步认识栈和队列,栈和队列是限定插入和删除只能在表的“端点”进行的线性表。
开始学习 01栈
是什么?
限定仅在表尾进行插入和删除操作的线性表,表尾—栈顶,表头—栈底,不含元素的空表称为空栈。
打个形象的比方,栈就像一个羽毛球筒,羽毛球就是一个个元素,每次我们取球都只能从最顶部取(不可能直接从球筒中间取吧,除非你在球筒中间开个洞),放球也一样,也只能从顶部放。
这里的取球就对应栈的出栈/弹出操作,注意不是栈的删除操作,区别就是前者的返回值会返回被弹出的元素,而后者则不会。
特点:
先进后出(FILO)或后进先出(LIFO)。就是说先进栈的元素总是后出来。现在不理解这句话的意思没关系,后面学栈的删除和添加元素的时候就会理解这句话的涵义
02队列
是什么?
队列是限定只能在表的一端进行插入(入队),而在表的另一端进行删除(出队)的线性表
队尾(rear) ——允许插入的一端
队首(front) ——允许删除的一端
队列其实很好理解,从字面意思来看,就像我们平时排队拿饭,我们总是从队尾加入队伍(插入元素),在队首取完饭的同学就从队伍离开(删除元素),当然这里要基于不出现插队这种不文明行为。
特点:
与栈不同,队列的特点是先进先出(FIFO),即先进入的元素总是最先出队。
●数据结构与算法之链表的一元多项式相加
●数据结构与算法之双向循环链表
●数据结构与算法之循环链表
多点关注多份关爱仙女都在看点点点,赞和在看都在这儿!
先进先出算法_数据结构与算法之初识栈与队列相关推荐
- 循环首次适应算法_数据结构与算法之2——排序问题
排序真的是数据结构与算法中的重中之重啊,无论是对编程能力的提升,以后工作后的应用,或者是应对面试的时候都是经常需要用到的.基本的几个经典排序一定要做到滚瓜烂熟,能够做到给你一个具体的排序算法题,一定能 ...
- 尚硅谷01 数据结构与算法_数据结构与算法介绍+稀疏数组
数据结构与算法的关系 几个实际编程中遇到的问题 要想写出优秀的算法,首先应该能读懂别人写好的算法. 将生活中遇到的实际问题,使用程序来解决 线性结构和非线性结构 线性结构和非线性结构的关系: 数据结构 ...
- python数据结构算法_数据结构与算法(Python)
数据结构与算法(Python) Why? 我们举一个可能不太恰当的例子: 如果将最终写好运行的程序比作战场,我们码农便是指挥作战的将军,而我们所写的代码便是士兵和武器. 那么数据结构和算法是什么?答曰 ...
- prim算法_数据结构与算法
根据MOOC上课程总结,文章目录为: 一.引论 数据结构的基本概念 数据的逻辑结构和存储结构 算法及其时间复杂度 时间复杂度及应用 二.线性表 线性表的概念及顺序存储 单链表的概念及其基本操作 建立单 ...
- c++数据结构队列栈尸体_数据结构-第三章:栈和队列(栈的应用、括号匹配、表达式转换)...
第三章:栈和队列 下面讲解栈的应用主要内容有:栈的应用.括号匹配.中 后 前 缀表达式转换 1.栈的应用 1.1括号匹配 我们在数学运算中 [(A+b)*c] - (E-F) 往往都会有[ ] 和 ( ...
- c语言中缀表达式求值_数据结构-第三章:栈和队列(栈的应用、括号匹配、表达式转换)
第三章:栈和队列 下面讲解栈的应用主要内容有:栈的应用.括号匹配.中 后 前 缀表达式转换 1.栈的应用 1.1括号匹配 我们在数学运算中 [(A+b)*c] - (E-F) 往往都会有[ ] 和 ( ...
- b+树时间复杂度_数据结构:线性表,栈,队列,数组,字符串,树和二叉树,哈希表...
作者:张人大 代码效率优化 复杂度 -- 一个关于输入数据量n的函数 时间复杂度 -- 昂贵 与代码的结构设计有着紧密关系 一个顺序结构的代码,时间复杂度是O(1), 即任务与算例个数 n 无关 空间 ...
- prim算法_数据结构与算法:图形结构
ͼ 图形结构是一种比树形结构更复杂的非线性结构.在树形结构中,结点间具有分支层次关系,每一层上的结点只能和上一层中的至多一个结点相关,但可能和下一层的多个结点相关.而在图形结构中,任意两个结点之间都可 ...
- dijkstra 算法_数据结构与算法—单源最短路径dijkstra算法
介绍 对于dijkstra算法,很多人可能感觉熟悉而又陌生,可能大部分人比较了解bfs和dfs,而对dijkstra和floyd算法可能知道大概是图论中的某个算法,但是可能不清楚其中的作用和原理,又或 ...
- 获取用户列表为空_数据结构和算法(Golang实现)(15)常见数据结构-列表
列表 一.列表 List 我们又经常听到 列表 List 数据结构,其实这只是更宏观的统称,表示存放数据的队列. 列表 List:存放数据,数据按顺序排列,可以依次入队和出队,有序号关系,可以取出某序 ...
最新文章
- Android ContentProvider和getContentResolver
- access oracle sql语句,在 Access 中使用 SQL 建索引
- 高数第七版_习题解答_3-1行列式习题
- 大数据旅游网站Hopper获新一轮1600万美元融资
- B1922 [Sdoi2010]大陆争霸 最短路
- 信息学奥赛一本通(2073:【例2.16 】三角形面积)
- Dart核心基础List概述
- Android 中的BroadCastReceiver【转】
- 解决h264bitstream的一个bug
- MySQL重启也无法解决的Warning: World-writable config file '/etc/mysql/my.cnf' is ignored
- Linux资源监控工具
- PostgreSQL Logical Replication
- 区块链 以太坊 合约 创建、执行 详解
- java应用程序字体太小_为什么在任何java应用程序中字体看起来都很糟糕?
- 锐捷交换机忘记密码解决方案:恢复出厂设置、重置配置文件
- 对于业务中库存超卖测试
- 如何快速写出Json Schema,校验Json Schema
- 网页多次刷新出不来怎么办
- c语言单片机温度调节系统设计,基于单片机的温度控制系统的设计
- 0成本无VPS搭建私人导航、图床、音乐服务器 | vercel freewha
热门文章
- Navicat工具怎么连接oracle数据库
- [mysqld_safe]centos7 mysql 安装与配置
- MVC仓储执行存储过程报错“未提供该参数”
- 【网络流24题】No.4 魔术球问题 (二分+最小路径覆盖)
- js常用几种类方法实现
- android项目中导入actionbarsherlock 需要注意的地方
- 基于visual Studio2013解决面试题之0707最小元素
- ld 命令看内存布局 汇编级调试
- javascript实现跳转菜单
- web安全day47:口令、字典、crunch、cupp、hydra、MSF-psexec_psh的使用