哈夫曼编码——哈夫曼树

哈夫曼树是一个利用权值进行优化编码的一个比较奇怪的树,他的实现比较简单,用途也比较单一。
哈夫曼树的实现,实现要求:

  1. 通过哈夫曼树可以保证在编码过程中不会出现例如:1000和100这样的编码规则,否则就会编码失败,因为1000和100在某些情况下的编码会一模一样。
  2. 通过哈夫曼树可以保证权值大的值进行编码时,对应编码规则的编码比较短,这样就保证了编码的简便性。
    基本要求就是这两个,当然以后进行代码书写等等,就不用考虑那么多了,因为前辈们已经帮我们完成了测试,只是需要我们去实现就可以了。
    实现的对应方式:
  3. 首先将每一个编码的原始值放在我的树的叶子节点上,那么就不会在他的路径上出现编码,那么就不会出现上文说的那样。
  4. 我们把权值大的编码放在比较浅的位置,这样利用左右子树表示0,1就可以很快的进行编码,并且保证了权值大的编码短
    应用 :文件压缩的讲解:https://mp.csdn.net/mdeditor/84350819#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值