- 1
- 0
- 约8.91千字
- 约 17页
- 2019-05-05 发布于广东
- 举报
第二章 栈和队列(1)
• 栈和队列也是线性表,只是操作受限的线性表。
• 由于操作上的限制,使他们的行为不同于一般
的线性表,而有自己的特点。
• 栈的定义
• 栈的顺序存储与实现顺序栈
• 栈的链式存储与实现链式栈
• 队列的定义
• 队列的顺序存储与实现
• 队列的链式存储与实现
• 栈与队列的应用
2.1 栈(Stack)
1、逻辑定义及特点
– 定义:只能在一端进行插入和删除操作的线性表。(操作限制)
–允许插入和删除的一端称为栈顶(top)
–另一端称为栈底(bottom)
Push Pop
–特点:
后进先出LIFO (Last In First Out) top
先进后出FILO (First In Last Out)
an
…
bottom a1
栈(Stack)
栈顶 (Top)——栈中可插入、删除数据一端。
栈底 (Bottom)——栈中不可插删入数据一端。
插入:进栈、压栈、入栈
删除:退栈、弹出、出栈 栈顶
栈的基本操作: Top
1、创建一个空栈; an
2 、进栈 .
3、出栈 .
.
4 、取栈顶元素 a
5、判断栈空、栈满、清空栈 栈底 2
Bottom a1
栈的存储实现方式:
1、基于数组的栈顺序栈
2 、基于链表的栈链式栈
栈的顺序存储实现(顺序栈)
2、栈的顺序存储实现
(1)顺序栈定义(顺序存储结构上的C语言实现)
• 栈顶、栈底和栈大小要指示出来
Typedef struct {
ElemType *Base;//栈底指针,也就是栈区指针
int Top; // 栈顶位置,Top总是指向下一个待存位置
int StackSize; // 已分配的空间大小(最大元素数)
} SeqStack;
SeqStack SStack; //定义栈变量
栈的顺序存储实现(顺序栈)
(2 )、创建一个空栈 (栈的初始化)
bool Init_SeqStack(SeqStack S, int Ssize=DefaultSize) //
您可能关注的文档
- 内蒙古科技大学材料与冶金学院 板料成型部分 2.pdf
- 内蒙古科技大学材料与冶金学院 板料成型部分 1.pdf
- 内蒙古科技大学材料与冶金学院 质量控制理论.pdf
- 内蒙古科技大学材料与冶金学院 金属塑性成型工艺设计与工艺制度.pdf
- 内蒙古大学艺术学院蒙古族传统音乐概论 蒙 古族传统音乐的源流.ppt
- 内蒙古大学艺术学院蒙古族传统音乐概论 蒙 古族传统音乐的构成.ppt
- 南京信息工程大学 遥感图像处理第八章 二值图像处理与形状分析.pdf
- 南京航空航天大学电 路分析基础第一章 电路分析的基本概念和电路基本定律.pdf
- 兰州商学院法学院环境资 源法第三章 环境问题与环境资源法的发展历程.pdf
- 兰州理工大学结构优 化设计第七章 结构优化设计实例.pdf
- 最新2022年人教版七年级物理上册期中复习试题.doc
- 最新2022年人教版七年级物理(上册)期中试题及答案(完美版).doc
- 最新2022年人教版七年级物理(上册)期中质量分析卷及答案.doc
- 最新2022年人教版七年级物理(上册)期中试题及答案(下载).doc
- 最新2022年人教版七年级物理(上册)期中试题及答案(下载).doc
- 最新2022年人教版七年级物理(上册)期中试题及答案(最新).doc
- 最新2022年人教版七年级物理(上册)期中试卷及答案一.doc
- 最新2022年人教版七年级物理(上册)期中试卷及答案(汇编).doc
- 最新2022年人教版七年级物理(上册)期中试题及答案(汇总).doc
- 最新2022年人教版七年级物理(上册)期中试卷含参考答案.doc
原创力文档

文档评论(0)