面试官问你B树和B+树,就把这篇文章丢给他
发布时间:2019-09-20 03:26:43 所属栏目:教程 来源:欧阳思海
导读:副标题#e# 1 B树 在介绍B+树之前, 先简单的介绍一下B树,这两种数据结构既有相似之处,也有他们的区别,最后,我们也会对比一下这两种数据结构的区别。 1.1 B树概念 B树也称B-树,它是一颗多路平衡查找树。二叉树我想大家都不陌生,其实,B树和后面讲到的B+
插入25,此时元素数量大于4个了,分裂 接着插入26,30,继续分裂 有了这几个例子,相信插入操作没什么问题了,下面接着看看删除操作。 2.3 删除操作 对于删除操作是比B树简单一些的,因为叶子节点有指针的存在,向兄弟节点借元素时,不需要通过父节点了,而是可以直接通过兄弟节移动即可(前提是兄弟节点的元素大于m/2),然后更新父节点的索引;如果兄弟节点的元素不大于m/2(兄弟节点也没有多余的元素),则将当前节点和兄弟节点合并,并且删除父节点中的key,下面我们看看具体的实例。 初始状态 删除10,删除后,不满足要求,发现左边兄弟节点有多余的元素,所以去借元素,最后,修改父节点索引 删除元素5,发现不满足要求,并且发现左右兄弟节点都没有多余的元素,所以,可以选择和兄弟节点合并,最后修改父节点索引 发现父节点索引也不满足条件,所以,需要做跟上面一步一样的操作 这样,B+树的删除操作也就完成了,是不是看完之后,觉得非常简单! 3 B树和B+树总结 (编辑:西安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |