数据结构(栈和队列)

发布于 2021-09-28  490 次阅读


3.1 栈和队列的定义和特点

- 栈和队列是两种常用的、重要的数据结构
- 栈和队列是限定插入和删除只能在表的“端点”进行的线性表

file

后进先出

栈的应用

file

队列

file

file

队列的常见应用

file

栈和队列是线性表的自己(是插入和删除位置受限的线性表)

3.1.1 栈的定义和特点

file

栈的相关概念

file

栈的示意图

file

入栈的操作示图

file

出栈的操作示图

file

思考

file

栈的相关概念

file

栈和一般的线性表有什么不同?

file

3.1.2 队列的定义和特点

file

队列的相关概念

file

3.2 案例引入

案例3.1(栈):进制转换

file

file

案例3.2(栈):括号匹配的检验

file

案例3.3(栈):表达式求值

file

file

file

案例3.4(队列):舞伴问题

file

3.3. 栈的表示和操作实现

3.3.1 栈的抽象数据类型定义

file

file

file

3.3.2 顺序栈的表示

file

file

file

file

file

顺序栈的初始化

file

判断顺序栈是否为空

file

求顺序栈的长度

file

清空顺序栈

file

销毁顺序栈

file

顺序栈的入栈

file

顺序栈的出栈

file

3.3.3 链栈的表示和实现

file

链栈的初始化

file

判断链栈是否为空?

file

链栈入栈

file

链栈出栈

file

取栈顶元素

file

3.4 栈与递归

递归的定义

若一个对象对象部分地包含它自己,或用它自己给自己定义,则称这个对象是递归的.
若一个过程直接地或间接地调用自己,则称为这个过程是递归的过程。

file

file

file

file

file

file

file

file

file

file

file

file

递归的优缺点

file

file

file

file

file

file

3.5 队列的表示和操作的实现

file

file

file

file

file

file

file

file

file

file

3.6 案例分析与实现

file

循环队列的操作——队列的初始化

file

循环队列的操作——求队列的长度

file

循环队列的操作——循环队列的入队

file

循环队列的操作——循环队列的出队

file

循环队列的操作——取队头元素

file

3.5.3 链队——队列的链式表示和实现

file

file

链队列的操作——链队列初始化

file

链队列的销毁

file

不设p

file

链队列入队

file

链队列出队

file

file

链队列的队头元素

file


擦肩而过的概率