- 问题描述
假设关键字{1,2,…,n}被插入一棵最小度数为2的空B树中,那么最终的B树有多少个结点? - 问题求解
把关键字{1,2,…,11}一次插入B树中的变化如下所示:
可以发现,由于每次插入的树都比前面的大,因此新关键字永远是放到了最右边的结点中。除了最右边一直往下的路径上的结点(记为R)中的关键字数有可能大于1外,其他所有结点的关键字数量都是1.当所有的R结点都有三个关键字时,有最少的节点数。此时n=2h+1−1+2(h+1),其中h是B树的高度,结点数是2h+1−1 。而2h+1−1=n−2(h+1),其中h=θ(lgn),因此节点数为θ(n)。
算法导论18.2-4
最新推荐文章于 2024-05-06 15:58:20 发布