database - 如果当前节点左侧的叶节点有空间,我应该在插入之前重新分配记录吗?
问题描述
我正在处理一个涉及 B+ 树的家庭作业问题。问题要求我们将 (2,3,5,7,11,17,19,23,29,31) 插入到节点结构有 4 个指针的 B+ 树中。
这是我到达的地方。
我想知道现在插入 17 是否应该将当前节点分成两个并分配键值(与步骤 2 相同:图 1)或者我应该将 5 移动到左侧的叶节点并更新父节点中的键值节点到 7 并通过将 7 和 11 向左移动一位插入 17(如图 2 所示)?第二种方法会增加计算开销,但会节省空间。但是文中没有提到这一点。(数据库系统概念)
解决方案
推荐阅读
- python - 数据框拆分列值,如何解决错误消息?
- css - 如何在 React 中更改引导导航栏切换器
- reactjs - 在 react-three-fiber 和 NextJS 中加载 bm-font
- javascript - 使用 CSS 和 jQuery 添加上一个/下一个按钮以滚动容器
- javascript - 需要有人帮助我处理数组中的 javascript 数组
- linux - ec2 实例上的实例可达性检查失败
- html - 带有 5 个盒子的 flexbox
- c++ - 使用 Windows 挂钩时出现滞后
- python - 在settings.py中,如果环境变量只在一个环境中使用,应该如何加载/设置?
- java - SwipeRefreshLayout 后数据重复