【数据结构】图解2-3树(学习红黑树、B树的基础)

本文介绍了2-3树的基本概念,它是一种绝对平衡的树,适用于学习红黑树和B树的基础。通过图解详细阐述了2-3树插入元素的流程,包括节点融合、四节点的调整,以及不同情况下如何保持树的平衡性。通过理解2-3树的插入操作,可以帮助更好地理解其他自平衡树的数据结构。
摘要由CSDN通过智能技术生成

一、基本介绍

2-3树:满足二分搜索树的基本性质,是一颗绝对平衡的树,节点可以存放一个或两个元素,每个节点有2个或3个孩子(如果对二分搜索树不太了解,可以去看这篇文章【数据结构】二分搜索树小结)

            如下图所示都是2-3树,左边是节点存放了一个元素,右边是节点存放了两个元素,对于右边的图,左子树<b,中间的孩子树则在b、c之间,右孩子则大于c。

          下图是一个实例,可以好好体会一下什么是2-3树,这里说一下什么是绝对平衡树,就是根节点到任意节点所经过的节点数量绝对相同,节点的左右孩子高度一定一样,根据这个性值,就可以知道二叉搜索树(可能形成链式结构)、AVL树(左右子树高度不超过1)、堆(最后一层叶子节点可能没有填满)...这些都不是绝对平衡树。

                                                       下面就让我们通过图解插入元素去理解2-3树是如何实现绝对平衡的

二、图解插入元素流程

由于2-3树是一颗绝对平衡的树,那么在插入元素时就不能将元素插入到为空的位置(因为要保证绝对平衡),如下图。

此时的根节点root值为42,待插入的元素值为37,需要如何插入元素才能保证插入后仍然是一颗绝对平衡的树呢?这时root节点的孩子节点为空,如果直接插入其孩子节点中那显然就不是一颗绝对平衡的树了。

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值