- 二叉树不存在度大于2的结点(每个根最多只有两个子结点)
- 二叉树的子树有左右之分,次序不能颠倒,因此二叉树是有序树
两个特殊的二叉树——(满二叉树,完全二叉树)
满二叉树——每个根结点都有左右两个子结点:
完全二叉树:虽然不是每个根都有两个子结点,但是前(h-1)层是满的,最后一层的子节点的增加必须是先增加左结点,再增加右结点,且中间不能为空(满二叉树也是特殊的完全二叉树)
二叉树的存储:——顺序存储——堆
顺序存储就是把一个二叉树存在一个数组中
堆:把具有特殊值规律的完全二叉树存入到数组中就是堆,堆不仅要满足上面二叉树存入数组的规则,还要满足存入数组里的二叉树必须是小堆或大堆:
注意:我们这里所说的堆是数据结构中数据存储的一种方式,并不是操作系统中所说的内存里的堆
例题:
总结:二叉树要储存在数组中必须要是完全二叉树或满二叉树,完全二叉树或满二叉树存储在数组中还不一定是堆,要看他是否满足大堆小堆的条件