- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构;教学内容;第3章 栈和队列;第3章 栈和队列;3.1 栈;;;ADT Stack{
数据对象:D ={ ai|ai∈ElemSet, i=1,2,…,n,n≥0 }
数据关系:R ={ai-1, ai|ai-1,ai∈D, i=2,3,…,n }
基本操作:
InitStack(S) 操作结果:构造一个空栈 S。
DestroyStack(S) 初始条件:栈 S 已存在。 操作结果:栈 S 被销毁。 ;;; 和线性表类似,栈也有两种存储方法:
栈的顺序存储结构——顺序栈;
栈的链式存储结构——链栈。;顺序栈,即栈的顺序存储结构,是利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素。
设置指针top指向栈顶元素在顺序栈中的位置,通常习惯做法是以top=0表示空栈。
栈在使用的过程中所需最大空间的大小很难估计,一般初始化设空栈时不限定栈的最大容量。
一般先分配一个基本容量,然后应用过程中,栈的空间不够使用时再逐段扩大。
;;;;;;;;栈的链式存储结构称为链栈,是运算受限的单链表。其插入和删除操作只能在表头位置上进行。因此,链栈没有必要像单链表那样附加头结点,栈顶指针top就是链表的头指针。;;空间性能:
顺序栈:有元素个数的限制和空间浪费的问题。
链栈:没有栈满的问题,只有当内存没有可用空间时才会出现栈满,但是每个元素都需要一个指针域,从而产生了结构性开销。
总之,当栈的使用过程中元素个数变化较大时,用链栈是适宜的,反之,应该采用顺序栈。;3.2 栈的应用;3.2.1 数制转换;;;3.2.2 括号匹配问题;28;;;3.2.4 栈与递归调用的实现;;;;;1 队列的基本概念
队列(Queue):也是运算受限的线性表。是一种先进先出(First In First Out ,简称FIFO)的线性表。只允许在表的一端进行插入,而在另一端进行删除。
队首(front) :允许进行删除的一端称为队首。
队尾(rear) :允许进行插入的一端称为队尾。
;;;;;;1 队列的链式存储表示
队列的链式存储结构简称为链队列,它是限制仅在表头进行删除操作和表尾进行插入操作的单链表。
需要两类不同的结点:数据元素结点,队列的队首指针和队尾指针的结点。;;;;;;3.3.3 队列的顺序表示和实现;3.3.2.1 队列的顺序存储结构;;3.3.2.2 循环队列;;;;;;;循环队列和链队列的比较;小结:;习题:;;;
您可能关注的文档
- 【2016年5月21-22营改增课件】15、预缴税款情况表.ppt
- 【CNC培训】CNC异常解析.pptx
- 【D200A001L 維修培訓資料】ATX200W 線路分析.pptx
- 【PE资料】電子元件认识.pptx
- 【Silvaco TCAD实用教程】11 器件仿真材料参数和物理模型.pptx
- 【Silvaco TCAD实用教程】13 电路仿真模块及流程介绍.pptx
- 【北大分析化学精品课程】10第五章 氧化还原滴定法(3-4节).pptx
- 【单片微机原理及应用】第5章 8086总线操作和时序.pptx
- 【单片微机原理及应用】第7章基本输入输出接口(7.1-7.2).pptx
- 【电路 架构】ATX200W 線路分析_許衛平.pptx
原创力文档


文档评论(0)