1 二叉树的概念
一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵别称为左子树和右子树的二叉树组成。
二叉树的特点:
1.每个结点最多有两棵子树,即二叉树不存在度大于2的结点。
2.二叉树的子树有左右之分,即子树的次序不能颠倒。
2 数据结构中的二叉树
3 特殊的二叉树
3.1 满二叉树
一个二叉树,如果每一层的结点都达到最大值,则这个二叉树就是满二叉树。即,如果一个二叉树的层数为 k k k,且结点数为 2 k − 1 2^k-1 2k−1,则它就是满二叉树。
3.2 完全二叉树
对一个满二叉树进行从上到下,从左到右依次进行编号,如果存在一棵对于深度为 k k k、结点数为 n n n的二叉树,每一个结点都与深度为 k k k的满二叉树中编号从1至 n n n的结点一一对应,则称这个二叉树为完全二叉树。
满二叉树是一种特殊的完全二叉树。
4 二叉树的性质
1.若规定根节点的层数为1,则一颗非空二叉树的第i层上最多有 2 i − 1 2^{i-1} 2i−1个结点。
2.若规定根节点的层数为1,则深度为h的二叉树的最大结点数为 2 h − 1 2^h-1 2h−1。
3.对任何一棵二叉树,如果度为0其叶节点个数为 n 0 n_0 n0,度为2的分支节点个数为 n