最优二叉树——哈夫曼树

哈夫曼树是一种带权路径长度最短的二叉树,也称为最优二叉树。

带权路径长度(WPL): 设二叉树有n个叶子结点,每个叶子结点带
有权值 wk,从根结点到每个叶子结点的长度为 lk,则每个叶子结
点的带权路径长度之和就是: WPL = \sum wklk
 

如何计算带权路径长度?

根节点记为第0层,带权路径长度= sum(层数*结点权重)

如何构造哈夫曼树:https://blog.csdn.net/hd12370/article/details/82877211

哈夫曼树的特点:

  •  没有度为1的结点;
  •  哈夫曼树的任意非叶节点的左右子树交换后仍是哈夫曼树;
  •  n个叶子结点的哈夫曼树共有2n-1个结点:

           n2 = n0 - 1 ,其中 n0 : 叶结点总数 ,n1 :只有一个儿子的叶结点总数, n2 :有2个儿子的结点总数

同一组权值,如{1,2,3,3},可以得到不同构的两颗哈夫曼树。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值