数据结构总结---树

来源:互联网 发布:男士护肤推荐 知乎 编辑:程序博客网 时间:2024/06/08 19:18

仅以此文纪念过往岁月


数据结构中树
1.二叉树
    其劣势在于输入Key的顺序,如果输入顺序为排序过的值,那构造的树,退化为线性。如果是普通二叉树,在其Key已知的情况下构造,可以使用随机序列法构造二叉树
2.vEB树
     vEB树全称Van Emde Boas Trees    其树的结构图如下:
     
         其核心为2的指数分解确定min和max的值,树的层数为loglogN,以2为底,该树会使用大量内存需要Key值为0~N-1,并且Key值不能够重复,对于Insert,delete,search 均在loglogN时间以内。
3.红黑树
       红黑树的特性如下:
       1. 每个结点要么是红的,要么是黑的。
       2. 根结点是黑的。
       3. 每个叶结点,即空结点(NIL)是黑的。(每一个Leaf均为黑色空节点)
       4.如果一个结点是红的,那么它的俩个儿子都是黑的。
       5.对每个结点,从该结点到其子孙结点的所有路径上包含相同数目的黑结点。
       红黑树是一种带颜色的树,其保证树的Insert,delete,search在一定时间范围以内,红黑树的关键在于节点的着色,由于在insert和delete额时会把树的特性不符合上述特征,需要重新调整。
4.KD树
      一种多维的特殊树结构,对矢量中每一维做分割,采用最大均方差的维度作为分割点,常用于在大规模的高维数据空间进行最近邻查找和近似最近邻查找
5.B树 
       B树的核心在于f分裂和合并
       在树构造和插入时,会使用分裂
       在树删除时,会使用合并

树的操作
1.构造
   根据初始值构造树
2.增加
   树增加一个节点
3.删除
   树删除一个节点
4.查询
   查询某一个值

0 0
原创粉丝点击