C4.1 二叉搜索树(BST)
二叉树(BT)最多两个孩子节点
二叉搜索树(BST), 满足: 左边的孩子节点小于自己, 右边的节点大于自己
平衡树, 左右子树的高度, 最多相差1, 左右子树是平衡的
一个完整的树: 一个树的高度是h, 如果它的叶子节点的高度是h 或者h-1,那它就是完整的树.
完美的平衡树: 所有节点的 左边子树和右边子树的高度是一样的
完美平衡树也是完整的
BST 是一个递归的结构. 或是一个空树, 或是一个节点, 它有key, 有左子树和右子树.
递归的特性让BST可以使用递归的算法
BST结合了链表插的灵活 和 有序数组检索的效率. 它需要检索的节点只和它的高度有关.
所以树越矮, 效率越高.
log(n)是最矮 可能的高度.
BST 每下降一级, 节点数量翻倍
完整树, 总共的节点 2h+1 -1
为保持较低的高度, 要尽量填满树
BST, 同样的数据集, 如果插入的顺序不同, 树的形状可能完全不同
213 和 231 树的形状是一样的
大量的插入后, 不太可能出现跛脚的树
有各种方案让BST保持平衡, 比如 b-tree
二叉搜索树(BST)
最新推荐文章于 2024-04-27 18:02:39 发布