2-3-4树是多叉树,而红黑树是二叉树,看上去可能完全不同,但是,在某种意义上它们又是完全相同的,一个可以通过应用一些简单的规则变成另一个,而且使他们保持平衡的操作也是一样,数学上称他们为同构。 ①、对应规则 应用如下三条规则可以将2-3-4树转化为红黑树: 一、把2-3-4树中的每个2-节点转化为红-黑树...
下面是 2-3-4 树插入的例子。 首先插入值 。从根节点 开始查找,找到包括 的区间 ,进入右子节点 。 由于节点() 是一个 4 节点,先将 插入形成暂时的5 节点。 由于() 超出了 4 节点,需要将第二个元素上溢。即将 与父节点合并形成 。 然后插入 ...
2-3-4树是多叉树,而红黑树是二叉树,看上去可能完全不同,但是,在某种意义上它们又是完全相同的,一个可以通过应用一些简单的规则变成另一个,而且使他们保持平衡的操作也是一样,数学上称他们为同构。 ①、对应规则 应用如下三条规则可以将2-3-4树转化为红黑树: 一、把2-3-4树中的每个2-节点转化为红-黑树...
2-3-4树是四阶的 B树(Balance Tree),他属于一种多路查找树,它的结构有以下限制: 所有叶子节点都拥有相同的深度。 节点只能是 2-节点、3-节点、4-节点之一。 2-节点:包含 1 个元素的节点,有 2 个子节点; 3-节点:包含 2 个元素的节点,有 3 个子节点; 4-节点:包含 3 个元素的节...
我们知道2-3树树底下最多是3-节点,可以直接插入元素然后再判断是否是4-节点,如果是向2-节点插入一个元素,变成3-节点无需分解;如果是向3-节点插入一个元素变成4-节点,进行向上变换将中间的键合并到父节点,如果父节点也变成4-节点,也接着继续分解4-节点,直到根节点,根节点也是4-节点,也接着分解,树高+1。
2-3-4 树的查找类似了二叉树的查找过程,通过键值的比较来决定遍历方向。 例如在图3.1所示树中查找22: 例如在图 3.1 所示树中查找 15 : 5) 插入 如果2-3-4 树中已存在当前插入的 key ,则插入失败,否则最终一定是在叶子节点中进行插入操作,因为查找过程的结束位置在叶子节点。
2-3-4树是四阶的B树(Balance Tree),它的结构有以下限制: 所有叶子节点都拥有相同的深度。 节点只能是 2-节点、3-节点、4-节点之一。 2-节点:包含 1 个元素的节点,有 2 个子节点; 3-节点:包含 2 个元素的节点,有 3 个子节点; 4-节点:包含 3 个元素的节点,有 4 个子节点; ...
2-3-4树就是一种4阶的多叉树,它像红黑树一样是平衡树,可以保证在O(lgn)的时间内完成查找、插入和删除操作,容易实现,但是效率比红黑树稍差。 2-3-4树每个节点最多有四个字节点和三个数据项,名字中 2,3,4 的数字含义是指一个节点可能含有的子节点的个数。对于非叶节点有三种可能的情况: ...
2-3-4 树其实就是 2-3 树的概念扩展,它多了一个 4 结点。一个 4 结点包含小中大三个元素和四个孩子(或没有孩子),左子树包含小于最小元素的元素;第二子树包含大于最小元素,小于第二元素的元素;第三子树包含大于第二元素,小于最大元素的元素;右子树包含大于最大元素的元素。B 树和 B+ 树 B ...