知识点:
1,满二叉树的定义:深度为k且含有2*k-1个结点的二叉树。满二叉树的特点:每一层的节点数都是最大结点数,第i层的结点数都是具有最大值2*i-1。编号且唯一确定,约定编号从根结点起,自上而下,从左至右。
2,完全二叉树的定义:深度为k且含有n个结点的二叉树,当且仅当每一个结点都与深度为k的满二叉树从编号1到n的结点一一对应,称为完全二叉树。完全二叉树的特点:叶子结点只可能在层级最大的两层上出现;对于任意结点,右分支下的最大子孙的最大层级为l,则左分支下的子孙的最大层级比为l或l+1。
接下来,让我们来分析分析以下的图形吧!
图1
判断为满二叉树。根据判断条件它满足满二叉树的基本条件
图2
判断为完全二叉树。因为它满足二叉树的条件
图3
判断为非完全二叉树:编号3下面没有子孙,但是同级的编号2下面编号5有子孙,不符合完全二叉树 从编号1到n的结点一一对应,如果没有编号6,7,那这个就是完全二叉树。
图4
判断为非完全二叉树:编号3下面的编号6属于右子树,虽然编号2,3它们的最大深度都为3,但是不满足从左至右的规则,所以该树不属于完全二叉树。如果编号6的子树是左子树的话,就满足完全二叉树的条件。
图5
判断为非完全二叉树:同图4一样,都没有满足从左至右的条件。如果将虚线那个子树补充上,就为完全二叉树。
图6
判断为非完全二叉树:同图4,5一样,都没有满足从左至右的条件。如果将编号2下面的子树添加一个上去,为编号5子树,3子树下面添加上子树6,7,就为完全二叉树。
图7
对比图:
如果大家还有什么不明白的,或者判断不出来的,可以放在评论区或者私信小小博主(我),看见就为大家解答一下,欢迎大家投稿!