算法导论 附录B B.5-5

一棵满二叉树的内路径长度是指所有内部结点深度之和。类似地,外路径长度是指所有叶结点的深度之和。考虑一个有n个内部结点的满二叉树,其内路径长度为i,外路径长度为e。证明e = i + 2n.

证明:先考虑不同深度节点的内部结点和叶结点数量,不妨设树最大深度为d,有:

depthinner_nodeleaf_node
0a_{0}(1)b_{0}(0)
1a_{1}b_{1}
2a_{2}b_{2}
.........
da_{d}(0)b_{d}

不难看出每层中的内部结点与叶结点数量和与上一层的内部节点数量有关,即:

a_{k} + b_{k} = 2a_{k-1}

内路径长度i,外路径长度e分别为各深度结点数乘以对应深度之和,即:

i = \sum_{k = 1}^{d}k \cdot a_{k}

e = \sum_{k = 1}^{d}k \cdot b_{k}

不难看出(因为a_{0}b_{0}a_{d}数值上均为0,变换看着可能有点别扭):

i + e = \sum_{k = 1}^{d}k \cdot (a_{k} + b_{k}) = 2\sum_{k = 1}^{d}k \cdot a_{k - 1} = 2\sum_{k = 1}^{d}(k + 1) \cdot a_{k} = 2i + 2\sum_{k = 1}^{d} a_{k} = 2i + 2n

因此 e = i + 2n

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值