一颗124个叶子结点的完全二叉树,最多有多少个结点??
248。
计算过程如下:
1、根据二叉树的性质n0 = n2 + 1,因此度为2的结点数为124-1 = 123。
2、而完全二叉树中度为1的结点数最多1个。
3、因此该完全二叉最多有:124+123+1 = 248个结点。
完全二叉树是由满二叉树而引出来的。对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。
1、所有的叶结点都出现在第k层或k-l层(层次最大的两层)
2对任一结点,如果其右子树的最大层次为L,则其左子树的最大层次为L或L+l。
3、一棵二叉树至多只有最下面的两层上的结点的度数可以小于2,并且最下层上的结点都集中在该层最左边的若干位置上,则此二叉树成为完全二叉树,并且最下层上的结点都集中在该层最左边的若干位置上,而在最后一层上,右边的若干结点缺失的二叉树,则此二叉树成为完全二叉树。
扩展资料:
本题的另一算法:
1、n=n0+n1+n2,n0=n2+1 ==>n=2n0+n1-1 ;
2、其中在完全二叉树中, n1或为0或者为1;
3、要使最多结点,则n1为1, 所以得到节点n=248;
判断一棵树是否是完全二叉树的思路:
1、如果树为空,则直接返回错;
2、如果树不为空:层序遍历二叉树;
3、如果一个结点左右孩子都不为空,则pop该节点,将其左右孩子入队列;
4、如果遇到一个结点,左孩子为空,右孩子不为空,则该树一定不是完全二叉树;
5、如果遇到一个结点,左孩子不为空,右孩子为空;或者左右孩子都为空;则该节点之后的队列中的结点都为叶子节点;该树才是完全二叉树,否则就不是完全二叉树;