B 树(B-tree)、B+ 树(B±tree)
特点
•一般化的二叉查找树(binary search tree)
•“矮胖”,内部(非叶子)节点可以拥有可变数量的子节点(数量范围预先定义好)
应用
•大部分文件系统、数据库系统都采用B树、B+树作为索引结构
区别
•B+树中只有叶子节点会带有指向记录的指针(ROWID),而B树则所有节点都带有,在内部节点出现的索引项不会再出现在叶子节点中。
•B+树中所有叶子节点都是通过指针连接在一起,而B树不会。
B树的优点
对于在内部节点的数据,可直接得到,不必根据叶子节点来定位。
B+树的优点
•非叶子节点不会带上 ROWID,这样,一个块中可以容纳更多的索引项,一是可以降低树的高度。二是一个内部节点可以定位更多的叶子节点。
•叶子节点之间通过指针来连接,范围扫描将十分简单,而对于B树来说,则需要在叶子节点和内部节点不停的往返移动。
C++B树
最新推荐文章于 2024-07-06 20:37:42 发布
B树和B+树是常见的数据结构,应用于文件系统和数据库的索引。B树内部节点和叶子节点都存储索引,而B+树只有叶子节点存储ROWID,且所有叶子节点通过指针连接,方便范围扫描。B树优点在于内部节点可直接获取数据,B+树优点在于更高的索引密度和简便的范围查询。
摘要由CSDN通过智能技术生成