为什么B+树在随机搜索中比B树效率更低?

问题描述 投票:0回答:1

我想知道为什么 B+ 树在随机搜索中比 B 树效率更低(我在一本没有解释原因的理论书中读到了这一点),考虑到据我所知,这两种类型之间唯一的区别数据结构的一个特点是B+树在每个离开节点都有一个指向下一个节点的指针。我想我缺少一些东西。

有人可以向我解释一下这两种数据结构之间的进一步区别吗?

database data-structures tree theory
1个回答
0
投票

B+树中,信息仅存储在叶节点中,叶节点可以按顺序链接,从而优化范围查询。 B+树中的内部节点包含用于导航的键,不像B树,其中节点可以另外保存信息。 B+ 树中随机搜索的这种区别方式可能包含遍历额外的推荐来获取叶节点,与 B 树相比,可能会导致轻微的低效率。然而,B+ 树由于其顺序叶节点访问而在范围查询中表现出色。

假设你有一个B树和一个B+树。 B 树中的内部节点也可能有学生姓名;这使得可以更快地搜索在树中早期找到的记录。这与 B+ 树不同,因为它的内部节点只有键,因此从叶节点移动到叶节点可能需要更多时间,因为它保留了学生详细信息,因此 B+ 树中的随机搜索过程将比 B 树中的随机搜索过程稍微长一些。

© www.soinside.com 2019 - 2024. All rights reserved.