Appearance
题目
依次将关键字 插入初始为空的 阶 B 树后,根结点中包含的关键字是( )。
错因
A
可能是错按" 阶 B 树(每节点最多 个关键字)"处理,让插入过程一直不分裂,最后凭直觉挑了"中位数附近"的 。或者把分裂规则记成"上提中位数 "且只发生过一次分裂——但本题至少发生 次分裂,结果不会只有 个关键字。
C
第一次分裂时上提了错的关键字。例如把 分裂时上提 或 (其实应当上提 号位的 ),导致后续整体形态偏移,最后根错算为 。
D
类似地,分裂时把上提位置算错,特别是第二次插入 触发分裂时把 一起上提到根。其实第二次分裂上提的应当是 , 留在分裂后的右子节点里。
总解析
4 阶 B 树规则(408 王道标准):
- 每个非根节点关键字数 ,即每节点 个关键字、 个孩子。
- 插入:找到对应叶子节点插入,若插入后关键字数 (即 )则分裂:把第 号位的关键字上提到父节点,左侧关键字留在原节点,右侧关键字成为新节点。
逐步插入:
| 步 | 插入 | 操作前 | 操作后 |
|---|---|---|---|
| 1 | 5 | 空 | |
| 2 | 6 | ||
| 3 | 9 | (满 3 个,未超) | |
| 4 | 13 | 插入后 → 分裂:上提 ,左 ,右 。形态: — 左 ,右 | |
| 5 | 8 | 8 > 6 走右 ,8 < 9 → 插首位 | 右 (满 3 个,未超) |
| 6 | 2 | 2 < 6 走左 | 左 |
| 7 | 12 | 12 > 6 走右 ,9 < 12 < 13 | 右 → 分裂:上提 ,左 ,右 。根变 ,三孩子 |
| 8 | 15 | 15 > 9 走最右 | 最右 (满 3 个,未超) |
最终 B 树形态:
[ 6 , 9 ]
/ | \
[2,5] [8] [12,13,15]根结点关键字 = 。
最终答案是 B(6, 9)。
4 阶 B 树关键技巧:① " 阶"指最大孩子数, 阶 = 至多 孩子 = 至多 关键字;② 分裂上提的位置是 号(从 数起);③ 插入时一定先走到叶子层,再判分裂——别在中间节点直接放。