234树是什么
234树是平衡树,但不是二叉树,因为它可以有多个节点。
如:
2-node有一个根节点,两个子节点
3-node有两个根节点,三个子节点
4-node有三个根节点,四个子节点。
234树的特点
- 2-node:左子树<key<右子树
- 3-node:左子树<第一个key<中间子树<第二个key<右子树
- 4-node:左子树<第一个key<第二个子树<第二个key<第三个子树<第三个key<右子树
构建234树
- 向2-node插入一个元素,会将它变成3-node
- 向3-node插入一个元素,会将它变成4-node
- 4-node无法再插入,此时需要转化,通常将4-node中间的元素放到父节点中,并进行分裂。如果转化后使得父节点也为4-node,则需要继续向上转化。
举例:将 1 2 3 4 5 6 7 9 10 11 12构建成一个234树
如图: