分类目录:《算法设计与分析》总目录
相关文章:
· 二叉搜索树(一):基础知识
· 二叉搜索树(二):查询二叉搜索树
· 二叉搜索树(三):插入和删除
· 二叉搜索树(四):随机构建二叉搜索树的期望高度
我们已经证明了二叉搜索树上的每个基本操作都能在 O ( h ) O(h) O(h)时间内完成,其中 h h h为这棵树的高度。然而,随着元素的插入和删除,二叉搜索树的高度是变化的。例如,如果 n n n个关键字按严格递增的次序被插入,则这棵树一定是高度为 n − 1 n-1 n−1的一条链。
遗憾的是,当一棵二叉搜索树同时由插入和删除操作生成时,我们对这棵树的平均高度了解的甚少。当树是由插入操作单独生成时,分析就会变得容易得多。因此,我们定义 n n n个关键字的一棵随机构建二叉搜索树为按随机次序插入这些关键字到棵初始的空树中而生成的树,这里输入关键字的 n ! n! n!个排列中的每个都是等可能地出现。则一棵有 n n n个不同关键字的随机构建二叉搜索树的期望高度为 O ( ln n ) O(\ln n) O(lnn)。