B树定义及一种插入方式到定义的推导

B树定义

伪代码描述插入方式:

新值插入叶节点,达到叶节点最大值数,该节点分裂,中间值弹出给父节点,
左半边与右半边分别作为新的节点位于弹到父节点中间值的两侧。对于父亲节点
来说,相当于失去了一个指针,换来了一个值和两个指针。

如果没有父节点的话,中间值作为根节点。

B树最关键的性质,一棵阶数为m的B树,所有非根父节点至少有m/2个儿子。因为这条性质,高度为h的B树,可以存放(m/2)^h个节点。

证明上述伪码描述满足该性质,即:所有非根父节点至少有m/2个儿子。

我们首先要明白,所有父节点,值的个数为k,必有儿子的个数为
k+1。

我们只需要证明
1. 因儿子数过多产生分裂,进而新增的父节点都至少有【m/2】个儿子。
2. 原有的非根父节点的儿子数只会增多不会减少,除非发生分裂

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值