各种二叉树和查找结构总结

1. 二叉查找树(Binary Sort Tree):(BST)

又叫-二叉排序树;性质:要不是一颗空树,要不就是一颗左子树<根节点<右子树的二叉树

2. 平衡二叉树(AVL树)(Self-Balancing Binary Search或者Height-Balanced Binary Search):

二叉树节点的左子树深度减去右子树的值成为平衡因子BF;BF只可能为-1,0,1; 也是一种二叉查找树

3. 红黑树

因为一棵由n个结点随机构造的二叉查找树的高度为lgn,所以顺理成章,二叉查找树的一般操作的执行时间为O(lgn)。但二叉查找树若退化成了一棵具有n个结点的线性链后,则这些操作最坏情况运行时间为O(n);红黑树虽然本质上是一棵二叉查找树,但它在二叉查找树的基础上增加了着色和相关的性质使得红黑树相对平衡,从而保证了红黑树的查找、插入、删除的时间复杂度最坏为O(log n);特征:

①.每个结点要么是红的要么是黑的。

②.根结点是黑的。

③.每个叶结点(叶结点即指树尾端NIL指针或NULL结点)都是黑的。

④.如果一个结点是红的,那么它的两个儿子都是黑的。

⑤.对于任意结点而言,其到叶结点树尾端NIL指针的每条路径都包含相同数目的黑结点。

4.B+树

B树是为磁盘或其他直接存取的辅助存储设备而设计的一种平衡搜索树。B树类似于红黑树,但它们在降低磁盘I/O操作数方面要更好一些。 B+树是B树的一种变形,它把所有的卫星数据都存储在叶节点中,内部节点只存放关键字和孩子指针,因此最大化了内部节点的分支因子,所以B+树的遍历也更加高效(B树需要以中序的方式遍历节点,而B+树只需把所有叶子节点串成链表就可以从头到尾遍历)。

《各种二叉树和查找结构总结》

5.字典树(Trie树)

是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。

    原文作者:二叉查找树
    原文地址: https://blog.csdn.net/obession/article/details/77920871
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞