二叉树是n(n>=0)个结点的有限集合:

或者为空二叉树,即n=0。

或者由一个根结点和两个互不相交的被称为跟的左子树和右子树组成。左子树和右子树又分别是一棵二叉树。

每个结点至多只有两棵子树。

左右子树不能颠倒(二叉树是度为2的有序树)。

说明:二叉树可以有五种状态。空二叉树、只有左子树、只有右子树、只有根结点、左右子树都有。

按层序从1开始编号,结点i的左孩子为2i,右孩子为2i+1;结点的父结点为i/2向下取整(如果有)。

如果某个结点只有一个孩子,那一定是左孩子。

设非空二叉树中度为0、1和2的结点个数分别为n0、n1和n2,则n0=n2+1。(叶子结点比二分支结点多一个)

注意:上面说的几个重点一定要把二叉树的结点编号与完全二叉树对应起来。否则结论不成立。

结论:二叉树的顺序存储结构,只适合存储完全二叉树。

注意:n个结点的二叉链表共有n+1个空链域。