感谢轻松鼠的提问,发现自己文章的错误之处,已修改。
复习数据结构B-树时,N个关键字的B-树有N+1个叶子结点
。自己不能一下子得到该结论,故记录自己的推导过程以便回忆,希望帮助有同样疑惑的同学。
B-树
在此借用Time-space童鞋的图片。
首先,定义几个符号的意义。 M i M_i Mi表示第 i i i层的结点个数, N i N_i Ni表示第 i i i层的关键字个数, N i j N_i^j Nij表示第 i i i层第 j j j个结点的关键字个数。推导开始~
根据B-树的特性可以知道,一个结点的分支数 = 关键字个数 + 1,分支数即与该结点相连接的结点数。
i + 1 i+1 i+1层结点数 = (每个结点关键字个数+1)
M i + 1 = ∑ j = 1 M i ( N i j + 1 ) M_{i+1} = \sum_{j=1}^{M_i} (N_i^j + 1) M