数据结构和算法之栈和队列

目录

一、栈和队列的定义和特点

eg:

2、栈的定义和特点

栈的相关概念

入栈出栈操作的示意图

3、队列的定义和特点

队列的相关概念

​编辑

4、案例引入

进制转换

括号引入的匹配

表达式求值

舞伴问题

5、栈的表示和操作

栈的抽象数据类型的定义

栈的表示和实现

顺序栈的表示

栈的初始化

​编辑

判断栈是否为空

求顺序栈的长度

清空顺序栈

销毁顺序栈

顺序栈入栈

顺序栈出栈

​编辑

链栈的表示和实现

​编辑

链栈的初始化

判断链栈是否为空

链栈入栈

链栈出栈

取栈顶元素

栈和递归

​编辑

函数调用过程

队列的表示和实现

队列的抽象数据定义

队列的顺序表示和实现

解决上溢的方法

队列初始化

求队列的长度

循环队列入队

循环队列出队

取对头元素

链队

队列的链式表示和实现

链队列的初始化

​编辑

链队列入队

​编辑

 链队列出队

求链队列的对头元素


一、栈和队列的定义和特点

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

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

eg:

 

2、栈的定义和特点

栈的相关概念

入栈出栈操作的示意图

3、队列的定义和特点

队列的相关概念

4、案例引入

进制转换

括号引入的匹配

匹配成功的出栈

表达式求值

 

舞伴问题

5、栈的表示和操作

栈的抽象数据类型的定义

 

栈的表示和实现

 

 

顺序栈的表示

 

栈的初始化

判断栈是否为空

求顺序栈的长度

清空顺序栈

销毁顺序栈

顺序栈入栈

顺序栈出栈

链栈的表示和实现

链栈的指针方向与链表的指针方向相反

链栈的初始化

判断链栈是否为空

链栈入栈

链栈出栈

取栈顶元素

栈和递归

函数调用过程

队列的表示和实现

队列的抽象数据定义

队列的顺序表示和实现

解决上溢的方法

 

 

队列初始化

求队列的长度

循环队列入队

循环队列出队

取对头元素

链队

队列的链式表示和实现

链队列的初始化

链队列入队

 链队列出队

求链队列的对头元素

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值