二叉树:
关于二叉树的详细介绍: https://baike.baidu.com/item/%E4%BA%8C%E5%8F%89%E6%A0%91/1602879?fr=aladdin
动态生成的网站: https://www.cs.usfca.edu/~galles/visualization/BST.html
![](https://img.haomeiwen.com/i12816177/1b799b60b33de3c2.png)
特性
1.如图我们可以看出二叉树的特性:如果新增的节点值比父节点小会排在父节点左侧 比父节点大会排在父节点右侧【且子节点至多有两个节点】
-
例如:0009 这个值是先找到0010 比他小 排在左侧 而左侧又有了节点【值为0006】 相比0006又大了 排在0006的右侧
-
但会存在一种情况,让二叉树呈现一种线性表的样子【那就是数据单调递减或者递增】
-
示例1:
![](https://img.haomeiwen.com/i12816177/03dc886e3a2da9aa.png)
-
示例2:
file
2. 删除某个节点 ,其下的所有子节点会挂到该节点的父节点上。并不是全部删除。
- 查询方式是从上之下 如果该值大于父节点 找左侧 小于父节点找右侧 依次类推,当树结构为线性表结果时 查询效果与线性表一样。一般情况下查询效率大于线性表。
红黑树 (又叫平衡二叉树)
特性:
1.在二叉树基础上会做树的平衡。
2.一个节点存放一个索引
![](https://img.haomeiwen.com/i12816177/fe7969a0e75758ed.png)
![](https://img.haomeiwen.com/i12816177/55e5cb542792a2c1.png)
2的n次方=数据量
当数据两比较大,树的高度就越高
这样控制树的高度 减少查询的次数 提高查询的效率
B树 (B Tree)
![](https://img.haomeiwen.com/i12816177/900b5023758963da.png)
![](https://img.haomeiwen.com/i12816177/8e823d871c1c4885.png)
B+树 (多叉平衡树)
详细介绍:https://baike.baidu.com/item/B+%E6%A0%91/7845683
![](https://img.haomeiwen.com/i12816177/dd0792e064ac91c3.png)
![](https://img.haomeiwen.com/i12816177/2a4d0b475068422a.png)
一个节点下可以放1170节点【最多】
内存总容量= 1170117016; 1170的n-1次方*16 [索引元素]
本文来源于:宋文超super,专属平台有csdn、思否(SegmentFault)、 简书、 开源中国(oschina)、掘金,转载请注明出处。
网友评论