查缺补漏----二叉树的重要性质

1.n0=n2+1

设非空二叉树中度为0、1和2的结点个数分别为n0、n1和n2,则n0=n2+1,即叶子结点比2分支结点多一个。

假设树中结点总数为n,则

①n=n0 + n1 + n2(二叉树中只可能有度为0,1,2的结点)

n=n_1+2n_2+1(树的结点树=总度数+1)

度为1的结点有n1个,度为2的结点有n2个,由于度为2的每个结点又有两个孩子结点所以为2n_2,再加上一个根结点:n=n_1+2n_2+1

② - ① 得到:n0=n2+1

哈夫曼树的相关计算就可以用这个:

哈夫曼树只有度为0和2的结点,所以联立:
① n0=n2+1

② n0+n2=115

也可以用这个结论:

n个结点,两两结合为一棵树,总共需要合并n-1次,每一次合并都会增加一个结点,所以哈夫曼树的结点总数为n+n-1=2n-1个。

答案:C

答案:C

设非叶结点数为x,由结点数=结点度数+1:x+m=xm+1        

补充

(1) 哈夫曼树的带权路径长度:

① 树中所有叶结点的带权路径长度之和(WPL,Weighted Path Length)

注:树的路径长度是指根到每个结点的路径长的总和。根到每个结点的路径长度的最大值应是树的高度-1,注意与这里做区别。

所有分支结点的权值之和(这个也可以表示要注意)

可以自己验证一下:

这棵树的带权路径长度WPL_{min}=1*7+2*3+3*2+4*1+4*2=31

(2) 加权平均长度:

计算得到的WPL与各编码的权值之和的比值:130/80+10+2+8=13/10

2.对于完全二叉树,可以由结点数n推出度为0、1和2的结点个数为n0、n1和n2

完全二叉树最多只有一个度为1的结点,即:n1=0或1

二叉树中,n0=n2+1,那么n0+n2一定是奇数

若完全二叉树有 2k 个(偶数)个结点,则必有n1=1, n0=k,n2=k-1

若完全二叉树有 2k-1 个(奇数)个结点,则必有n1=0,n0=k,n2=k-1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值