一、二叉树定义
二叉树是每个节点最多有两个子树的树结构,即二叉树中不存在度大于二的节点。并且,二叉树的子树有左右之分,其次序不能颠倒。
二、二叉树的性质
- 在二叉树的第i层上最多有2^(i-1)个结点
- 深度为k的二叉树最多有2^(i)-1个结点
- 对任意一个二叉树,若度为2的结点数为n2,叶子结点数为n0,则满足n0=n2+1
- 具有n个结点的完全二叉树的深度为 [log2 n]+1,[]表示下取整
三、三种遍历方式
(1)先序遍历:先访问根节点,然后遍历左子树,最后遍历右子树;
在上图的二叉树中,结果为0 1 3 4 2 5 6
(2)中序遍历:先访问左子树,然后根节点,最后遍历右子树;
在上图的二叉树中,结果为3 1 4 0 5 2 6
(3)后序遍历:先遍历左子树,然后遍历右子树,最后访问根节点;
在上图的二叉树中,结果为 3 4 1 5 6 2 0
四、满二叉树和完全二叉树
1、满二叉树