文章目录
P1 数据
1.1 专业术语
1.1.1 数据
数据是所有能输入到计算机并能被计算机程序处理的符号总称
1.1.2 数据元素
数据元素是数据是基本单位
1.1.3 数据项
数据项是数据元素的最小单位
1.1.4 数据对象
数据对象是指性质相同的数据元素集合
1.1.5 数据类型(int、char)
数据类型是一个值的集合与定义在此值集合上的一些操作的总称
1.1.6 抽象数据类型(ADT)
通常用(数据对象、数据关系、基本操作)这样的三元组来表示抽象数据类型
1.2 数据结构
1.3 算法
1.3.1 算法的5个重要特性
(5)算法是有穷的,程序是无穷的
1.3.2 算法设计要求
1.3.3 算法的时间复杂度
1.3.3.1 复杂度练习
1.3.4空间复杂度
1.3.4.1练习
1.4 存储结构
1.4.1 链式存储
1.4.2索引存储
1.4.3 散列存储(哈希存储)
P2
本章导图
2.ADD 线性表
2.ADD.1 定义
2.ADD.2 基本操作
&符号的解释
C++中&符号
2.1 顺序表
2.ADD.1 顺序表的实现
malloc函数动态分配数组,free释放内存
2.ADD.1.2 动态分配
2.ADD.3 特点
2.1.1 顺序表的优缺点
2.1.2 顺序表的操作
2.1.2.1 顺序表的按位查找
2.1.3 课堂练习
2.2 单链表
2.2.1 单链表的相关知识
2.2.2 循环单链表
2.2.3 单链表的操作
指针是存放内存地址的变量
2.2.3.1 插入
实现
时间复杂度
2.2.3.2 删除
2.2.3.3 修改、查找
2.2.3.4 优缺点
2.2.3.5 练习
2.3 双链表
2.3.1 双链表的操作
2.3.2 双链表课堂练习
2.4 循环双链表
跟循环单链表类似
2.5 静态链表
2.5.1 静态链表增、删、改、查
2.5.2 静态链表——课堂练习
P3
思维导图
3.1栈
3.1.1 栈的基础操作
3.1.2 栈的课堂练习
3.2 共享栈
3.2.1 共享栈----练习
栈满 top1+1=top2
3.3 链栈
3.3.1链栈——课堂练习
3.4 顺序栈和链栈的比较
3.5 栈的应用
前缀、后缀
3.5.1 栈的应用——习题
P4
4.1 队列
4.1.1 循环队列
4.1.2 循环队列——练习
4.2 双端队列
(B)
4.3 链队
链队——练习
4.4 循环队列与链式队列的比较
4.4.1 队列的应用
P5
5.1 思维导图
5.2 矩阵
5.2.1 对称矩阵
下三角K,求法
上三角K,求法
5.2.2 三角矩阵
5.2.2.1 课堂练习
5.2.3 三对角矩阵
三对角矩阵:像个猫爪
5.2.3.1 三对角矩阵——课堂练习
5.2.4 稀疏矩阵
5.2.4.1 稀疏矩阵——习题
i | j | value |
---|---|---|
i1 | j1 | 值 |
i2 | j2 | 值 |
P6
6.1 思维导图
6.2 树的基本术语
6.3 基本的二叉树
6.4 二叉树的存储结构
6.5 二叉树的基本性质
>1. 树中的节点数等于所有节点的度数加 1
性质 1 其实非常好理解,如果是以层次的方式看待树,那么根节点的度,就等于第二层的节点数,第二层节点的度数之和,就等于第三层的节点数,以此类推。那么从第一层开始的每层节点度数和就等于从第二层开始的节点数之和,换言之,只是少了根节点。
6.6 二叉树的遍历
1、先、中、后、层次遍历。
2、根在哪儿,就是什么序
2( D)
P7
7.1 思维导图
7.2 线索二叉树
7.2.1 练习
7.3 树的存储方式
7.3.1 双亲表示法
7.3.2 孩子表示法
7.3.3 孩子兄弟表示法(二叉树表示法)
考试采用如下画法!! !
7.3.4 二叉树转换成森林
7.4 树和森林的遍历
二叉树的便利(根在哪就是什么遍历):先序(根左右)、后序(左右根)、中序(左根右)
树和森林的遍历:先根遍历(先序遍历);后根遍历(中序遍历)
7.5 二叉排序树
7.5.1 二叉排序树的插入
7.5.2 二叉排序树的删除
7.5.3 二叉排序树的查找
7.5.3.1 二叉排序树——课堂练习
P8 平衡二叉树
8.1 平衡二叉树——课堂练习
8.1 平衡二叉排序树的插入
8.1.1 左左平衡旋转
8.1.2 右右平衡旋转
8.1.3 左右平衡旋转
8.1.4 平衡二叉树的插入——课堂练习
8.2 哈夫曼树
8.2.1 哈夫曼编码
8.2.2 哈夫曼树—— 课堂练习
P9 图
9.1 图的专业术语
9.2 图结构的存储
9.2.1 邻接矩阵
9.2.1.1 邻接矩阵——练习
9.2.2 邻接表
9.2.2.1 邻接表——练习
9.2.3 邻接多重表
9.2.3.1 邻接多重表——练习
9.2.4 十字链表
9.3 图的遍历
9.3.1 深度优先遍历
9.3.2 广度优先遍历
9.4 图遍历的生成树
9.4.1 图遍历的生成树——练习
9.5 最小生成树
9.5.1 最小生成树——习题
9.6 最短路径
9.6.1 最短路径——习题
9.7 拓扑排序
9.7.1 拓扑排序——课堂例题
9.8 关键路径
9.8.1 关键路径——练习
P10 查找
10.1折半查找
10.1.1 折半查找——练习
10.2 分块查找
10.3 散列表(哈希表)
10.3.1 散列表——处理冲突
10.3.1.1 线性探测法
10.3.1.2 平方探测法
10.3.1.3 再散列法
10.3.1.4 伪随机法序列法![在这里插入图片描述](https://img-blog.csdnimg.cn/9045a3121c5047c99d9adece40e93f61.png)
10.3.1.5 散列表
10.3.1.5.1 散列表——练习
2、
P11 B树(11.2后此章节视频知识点出错)
11.1 B树的基本操作
11.1.1 B树插入
11.1.2 B树删除
11.1.2.1 所删除的非叶子
11.1.2.2 所删除的是叶子
11.1.2.3 B树的操作——习题
11.2 B树的特性
P12 九大排序
12.1 排序总结
12.1.1 插入排序
12.1.2 希尔排序
12.1.3 冒泡排序
12.1.4 快速排序
12.1.5 选择排序
12.1.6 堆排序
12.1.7 归并排序
12.1.8 基数排序
·