二叉树定义
每个结点至多只有两棵子树(即二叉树中不存在度>2的结点),且二叉树的子树有左右之分,次序不能任意颠倒。
二叉树是n个结点的有限集合:
n= 0 时,为空二叉树
n>0时,由一个根节点和两个互不相交的被称为根的左子树和右子树组成。
左子树和右子树又分别是一棵二叉树。
五种形态
二叉树有物种形态:
空二叉树
只有根节点
只有左子树
有左右子树
只有右子树
二叉树与度为2的树
1、度为2的树至少有3个结点,而二叉树可以为空
2、度为2的有序树的孩子的左右次序是相对于另一个孩子而言的,若某个结点只有一个孩子,则这个孩子就无需区分其左右次序;而二叉树无论其孩子数是否为2,均需确定其左右次序,即二叉树的结点次序不是相对于另一结点而言,而是确定的。
满二叉树
一棵高度为h,且含有2h -1个结点的二叉树就是满二叉树。
满二叉树的叶子结点都在最下一层,除叶子结点之外,每个结点度数都是2。
满二叉树按层序编号,根节点从1开始自上而下,自左向右编号:
对于编号为 i 的结点,
若有双亲 编号为 i/2
若有左孩子 编号为 2i
若有有孩子 编号为 2i +1
完全二叉树
高度h、n个结点的二叉树,当且仅当其每个结点都与高度为h的满二叉树中编号为1–n的