什么是队列
具有一定操作约束的线性表
只能在一端删除,另一端插入——先进先出表
数据结构
链式存储
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210222151029840.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEwNzkxMw==,size_16,color_FFFFFF,t_70)
什么是树?
n个节点构建的有限集合
节点的度:子树个数
树的度:树的所有节点最大的度
叶节点:度为0的节点
树的深度:所有节点中最大层次
二叉树——度为2的树
一个节点只分两条边出来
二叉树的遍历
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210223133039846.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210223134536820.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEwNzkxMw==,size_16,color_FFFFFF,t_70)
层序遍历
利用队列一层层输出节点的左右儿子
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210223141843915.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEwNzkxMw==,size_16,color_FFFFFF,t_70)
二叉树的存储结构
1、顺序数组
2、链表存储——主要方法
![在这里插入图片描述](https://img-blog.csdnimg.cn/2021022313384135.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEwNzkxMw==,size_16,color_FFFFFF,t_70)
二叉搜索树
根节点大于所有左子树,小于所有右子树
二叉搜索树插入
在树中插入元素
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210224105847816.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEwNzkxMw==,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210224105831265.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEwNzkxMw==,size_16,color_FFFFFF,t_70)
二叉树的删除
最复杂的是节点有左、右子树,
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210224110559683.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210224110611768.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEwNzkxMw==,size_16,color_FFFFFF,t_70)