二叉树:每个结点最多有两个子树的树结构。
左子树及右子树:结点的两个子结点被称为左子树和右子树。
性质:
- 度为0的结点总比度为2的结点多一;
- 二叉树第i层上的结点数目最多为 2{i-1} (i≥1)。
- 包含n个结点的二叉树的高度至少为log2 (n+1)。
满二叉树
满二叉树:一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。
性质:
- 叶子只存在于最下一层。
- 如果一个二叉树的层数为K,则结点总数是(2^k) -1
- 第i层上的结点数为: 2^(i-1)
- 在同样深度的二叉树中,满二叉树的结点个数最多,叶子树最多。
满二叉树
完全二叉树
完全二叉树是由满二叉树而引出来的。对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。
若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第h 层所有的结点都连续集中在最左边,这就是完全二叉树。
性质:
- 度为1 的结点数为0或1个;
- k个结点的完全二叉树的「log2n」(向下取整)+1。
完全二叉树
排序二叉树
二叉排序树或者是一棵空树,或者是具有下列性质的二叉树:
(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;
(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;
(3)左、右子树也分别为二叉排序树;
(4)没有键值相等的节点。
排序二叉树
平衡二叉树
它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。