1. 满二叉树(又称完美二叉树)
除最后一层无任何子结点外,每一层上的所有结点都有两个子结点的二叉树。
或
如果一个二叉树的层数为K,且结点总数是(2^k) -1 ,则它就是满二叉树。
2.完全二叉树
对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。
注意:满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树。
3. 完满二叉树
所有非叶子结点的度都是2 的二叉树。
换句话说:只要你有孩子,你就必然是有两个孩子。
从左到右依次为完满二叉树、完全二叉树、完美二叉树。
4. 最优二叉树(又称赫夫曼树)
指对于一组带有确定权值的叶结点,构造的具有最小带权路径长度的二叉树。
注意:最优二叉树不一定是完全二叉树。
5.二叉搜索树(又称二叉排序树、二叉查找树)
或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。
注意:没有值相等的节点。
6. 平衡二叉树(又称 AVL树)
平衡二叉树(AVL树)在符合二叉查找树的条件下,还满足任何节点的两个子树的高度最大差为1。下面的两张图片,左边是AVL树,它的任何节点的两个子树的高度差<=1;右边的不是AVL树,其根节点的左子树高度为3,而右子树高度为1;
7. B- 树(又称平衡多路查找树、B树)
8. B+树
B+树是对B树的一种变形树,它与B树的差异在于:
- 有k个子结点的结点必然有k个关键码;
- 非叶结点仅具有索引作用,跟记录有关的信息均存放在叶结点中。
- 树的所有叶结点构成一个有序链表,可以按照关键码排序的次序遍历全部记录。
如下图,是一个B+树:
参考博客:
1)https://blog.csdn.net/qq_36098284/article/details/80178336