本文将为大家介绍B树和B+树,首先介绍了B树的应用场景,为什么需要B树;然后介绍了B树的查询和插入过程;最后谈了B+树针对B树的改进。 在谈B树之前,先说一下B树所针对的应用场景。那么B树是用来做什么的呢? B树是一种为辅助存储设计的一种数据结构,普遍运用在数据库和文件系统中。举个例子来说,数据库大家肯定都不陌生,比如现在有一张表,其中有100万条记录,现在要查找查找其中的某条数据,如何快速地从100万条记录中找到需要的那条记录呢?大家的第一反应肯定是二叉查找树,下面先谈谈为什么二叉树不行。
为什么二叉查找树不行
还是刚刚那个例子,现在一张表中有100万条记录,我们以表的主键来构建一个二叉查找树。先不考虑二叉树不平衡退化成链表的情况,假设是理想情况,这个二叉树是完全平衡的。那么构建完成之后应该是下面这个样子的(示意图)
树的高度应该为
现在开始查找,加入我们要查找值为100的节点,怎么找呢&#x