B+树原理与其它查找树比较

B+树是一种多路查找树。
和传统的二叉树等树不同,它的每个结点上可以存储多个元素。并且每个结点可以作为它的子树的索引。在一颗B+树中要查找一个元素可以快速地找到。
B+树结点中的信息按顺序排列
叶子结点之间按顺序排列,结点内部的元素按顺序排列。具体是使用链表连接。

B+树和B树的区别:B+树所有叶子结点包含全部的信息,每个非叶子结点作为索引

B+树和二叉树、平衡树、红黑树的比较:
这些树都是内存中的树,每个结点只包含一个元素值,如果用来实现索引会造成层次很深,查找一次需要大量的IO读写。而且平衡树、红黑树在插入、删除时需要进行复杂的旋转,在磁盘中实现起来也很耗时。
因此B+树的优势时作为内存与磁盘交互的数据结构。作为组织磁盘中数据的数据结构。

一个M阶B树具有如下属性:

  • 如果根结点不是叶节点,则其至少有两颗子树
  • 没一个非根的分支结点都有k-1个元素和K个孩子。k最小时m/2上取整
  • 所有叶子结点位于同一层次
  • 非叶子结点作为索引
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容