第4章 栈和队列
本章讨论栈、队列和它们的应用实例。栈、队列是线性表的特殊情况,即限制存取位置的线性表。将它们的定义和实现放在头文件”stackqueue.h”中。优先级队列将在第6章“树”中再介绍。
§ 4.1 栈
堆栈或栈(stack)是一种最常用和最重要的数据结构,它的用途非常广泛,例如,汇编程序中的句法识别和表达式计算就是基于栈实现的。栈还经常使用在函数调用时的参数传递和函数值的返回方面。
§ 4.1.1 栈的特征和抽象数据类型
1.栈可定义为只允许在顶端进行插人和删除的线性表。
允许插人和删除的一端叫做栈顶(top ),不允许插人和删除的另一端叫做栈底(bottom)。当栈中没有任何元素时则成为空栈。
设给定栈S = (a 0, a 1,…,a n-1),则称a 0 为栈底,a n-1为栈顶。栈中按a0, a1,…,a n-1的顺序进栈。而退栈
的顺序必须反过来,a n -1先退出,然后a n-2才能退出,最后退出a0。因此,栈又叫做后进先出(LIFO, Last In First Out)的线性表,参看图4.1。
请注意:栈的后进先出是有条件的。其确切的含义是指:同时在栈中的元素,较后压入堆栈者必然会较先弹出堆栈。请看习题:
4-3 铁路进行列车调度时,常把站台设计成栈式结构的站台,如右图所示。试问:
(1)设有编号为1,2,3,4,5,6的六辆列车,顺序
您可能关注的文档
最近下载
- 2024-2023年住院医师规范化培训-住院医师规范化培训(胸心外科)考试练习精品.pdf VIP
- 湖北省襄阳市随州市部分高中2024-2025学年高二下学期6月期末联考语文试卷(含答案).docx VIP
- 2025年住院医师规范化培训结业理论考核(胸心外科)历年参考题库含答案详解.docx VIP
- 2020年高考全国Ⅰ卷(英语)真题(含答案).pdf VIP
- 桥本氏甲状腺炎功能医学干预案例王树岩案例刘女士38岁身高.DOC
- 2025年住院医师规范化培训(胸心外科)真题精选 .pdf VIP
- 2025年住院医师规培-通用版-住院医师规培(胸心外科)历年参考题典型考点含答案解析.docx VIP
- 2025上海中考数学一模汇编专题10几何综合题(学生版+解析版).docx
- 专题12:2025年(沪)中考数学二模试题分类汇编——几何综合(25题)(教师版).pdf
- GB 55024-2022 建筑电气与智能化通用规范.pdf VIP
原创力文档

文档评论(0)