我一直在slady.net上玩非常酷的 btree 小程序。我无法理解特定行为。看一下这个起始状态:
替代文字 http://www.freeimagehosting.net/uploads/db2931c7da.jpg
通过插入以下序列达到此特定状态:10、15、30、16、70、1、9、27、45、50、55。
我的问题是当我在序列中插入下一个值 65 时 [45, ] 节点会发生什么。
替代文字 http://www.freeimagehosting.net/uploads/3b70c1d302.jpg
[55,70] 节点将被 65 分割,作为中间值,65 将向上移动,然后也分割 [30,50] 节点。我的问题是:为什么 [45, ] 节点最终成为 [30, ] 节点的子节点?它的 parent 最初有 3 个孩子,最左边和最右边成为新的单独节点。45 介于这些值之间,似乎它也可以在 [65, ] 节点下结束......为什么?