二叉排序树,二叉平衡树,红黑树,B树,B+树的区别,作用,特性

二叉排序树

特性 

1.左节点数据 < 根节点数据 < 右节点数据 

2. 每个节点的度最大为2

 

二叉平衡树:

特性: 

1.左子树与右子树的深度差,最大不能超过1.  

2.二叉平衡树是二叉排序演变

 

以上查找一个数据的时间复杂度最大为 O(logn)

 

红黑树 就是 二叉平衡树

二叉排序树,二叉平衡树,红黑树,B树,B+树的区别,作用,特性

 

B树: 是多叉二叉平衡树。

特性: 1、控制树的高度   2、横向扩展

特点: 每层元素从左到有逐渐递增。

 

二叉排序树,二叉平衡树,红黑树,B树,B+树的区别,作用,特性

B树由红黑树演变而来

为什么会有这种演变呢?

假设有10W条数据,树的深度h将会很大,查询时间复杂度 O(log h), h越大,所花费的时间越高。. 如果查询的是多个数据,那么时间复杂度将是 O(m log h)。 因此在控制高度的情况下,对红黑树进行横向扩展,就成了B树。

B树时间复杂度:  O(m n / (2^h -1))  这里只能大致说出 横向时间复杂度 比 纵向要低,而且随着数量的越多,优势越明显。

 

B+树,由B树演变而来,用于索引。

特性:

1.非叶子节点,存储的是指针。 叶子节点,存储的是数据集。

2.叶子节点有指针指向,便于进行范围式查找。 (优点)

二叉排序树,二叉平衡树,红黑树,B树,B+树的区别,作用,特性