关注
http://blog.csdn.net/v_JULY_v/article/details/6530142/ 3.4B树的高度 根据上面的例子我们可以看出,对于辅存做IO读的次数取决于B树的高度。而B树的高度由什么决定的呢? 若B树某一非叶子节点包含N个关键字,则此非叶子节点含有N+1个孩子结点,而所有的叶子结点都在第I层,我们可以得出: 因为根至少有两个孩子,因此第2层至少有两个结点。 除根和叶子外,其它结点至少有┌m/2┐个孩子, 因此在第3层至少有2*┌m/2┐个结点, 在第4层至少有2*(┌m/2┐^2)个结点, 在第 I 层至少有2*(┌m/2┐^(l-2) )个结点,于是有: N+1 ≥ 2*┌m/2┐I-2; 考虑第L层的结点个数为N+1,那么2*(┌m/2┐^(l-2))≤N+1,也就是L层的最少结点数刚好达到N+1个,即: I≤ log┌m/2┐((N+1)/2 )+2; 所以 当B树包含N个关键字时,B树的最大高度为l-1(因为计算B树高度时,叶结点所在层不计算在内),即:l - 1 = log┌m/2┐((N+1)/2 )+1。 这个B树的高度公式从侧面显示了B树的查找效率是相当高的。 曾在一次面试中被问到,一棵含有N个总关键字数的m阶的B树的最大高度是多少?答曰:log_ceil(m/2)(N+1)/2 + 1 (上面中关于m阶B树的第1点特性已经提到:树中每个结点含有最多含有m个孩子,即m满足:ceil(m/2)<=m<=m。而树中每个结点含孩子数越少,树的高度则越大,故如此)。在2012微软4月份的笔试中也问到了此问题。
查看原帖
点赞 1
相关推荐
在平静中度过当下:如果这个bg也简历挂的话可能他们现在不缺人了吧,我也是这两天投的,阿里和快手投的岗都是简历秒挂


点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 如果春招能重来,我会___ #
24448次浏览 256人参与
# 刚入职就____,这样正常吗? #
144732次浏览 696人参与
# 联宝杯大学生创新大赛,你的技术值得产业级答案 #
48417次浏览 581人参与
# 这个offer值得去吗? #
24131次浏览 191人参与
# 有深度的简历长什么样? #
59278次浏览 757人参与
# 除了线上,还能去哪些地方投简历 #
12966次浏览 121人参与
# 在爱玛,骑向未来 #
15755次浏览 342人参与
# 字节开奖 #
154120次浏览 724人参与
# 上班苦还是上学苦呢? #
345933次浏览 2076人参与
# 你见过最离谱的招聘要求是什么? #
281273次浏览 1887人参与
# 实习怎么做才有更好的产出 #
50360次浏览 461人参与
# 今年形式下双非本找得到工作吗 #
329207次浏览 1776人参与
# 我的秋招“寄”录 #
476797次浏览 3065人参与
# 大学四年该怎么过,才不算浪费时间? #
24070次浏览 108人参与
# 字节求职进展汇总 #
1852419次浏览 15447人参与
# 薪资爆料 #
423568次浏览 2228人参与
# 秋招想进国企该如何准备 #
146902次浏览 687人参与
# 双非应该如何逆袭? #
589970次浏览 6420人参与
# 影石Insta360求职进展汇总 #
190531次浏览 1386人参与
# 双非本科求职如何逆袭 #
1652748次浏览 13105人参与
# 简历上的经历如何包装 #
294191次浏览 4121人参与
# 非技术投递记录 #
732275次浏览 6955人参与