B 树根节点,是否也同时可以当做叶子节点

2017-03-05 19:18:46 +08:00
 helloworld12

如题。 B 树的根节点,是否同时可以当做叶节点,还是必须有中间节点

我准备用 golang 实现一个 B 树
我先前是假设根节点,也可以当做叶子节点,然后在要分裂的时候就懵逼了,不知道该怎么分裂出中间节点

type BTNode struct {
    keys   []int
    vals   []interface{}
    isLeaf  bool
    parentNode *BTNode
}
3612 次点击
所在节点    算法
1 条回复
helloworld12
2017-03-05 20:04:37 +08:00
看 btree 实现的时候,有个不懂得,为什么 [New(2) 得到的是一个 234 树]( https://github.com/google/btree/blob/master/btree.go#L119-L125) 不应该是 2 个叉都是 2 个 key3 个子元素吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/345119

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX