二叉树:是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点的左子树和右子树组成。
二叉树的特点:
由二叉树定义以及图示分析得出二叉树有以下特点:
1)每个结点最多有两颗子树,所以二叉树中不存在度大于2的结点。
2)左子树和右子树是有顺序的,次序不能任意颠倒。
3)即使树中某结点只有一棵子树,也要区分它是左子树还是右子树。
二叉树存在5种状态:
满二叉树:深度为 K且含有2k-1个结点的二叉树
完全二叉树:
定义:深度为K的, 有n个结点的二叉树, 当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时, 称之为完全二叉树。
二叉排序树: 一颗二叉树或者是空树,或者是具有如下性质的二叉树
左子树上所有结点的关键字均小于根节点的关键字。
右子树上所有结点的关键字均大于根节点的关键字。
二叉排序树可用于元素的排序和搜索
平衡二叉树:
树上的任一结点的左子树和右子树的深度之差不超过1(平衡二叉树能有更高的搜索效率)
二叉树的性质:
1结点数量:
完全二叉树性质:
重点: