美文网首页CC++
Haffman编码

Haffman编码

作者: Juinjonn | 来源:发表于2016-11-21 16:44 被阅读48次

个人介绍及问题解决

表格

项目 成绩 百分比
A 不及格 10%
B 及格 15%
C 30%
D 40%
E 50%
1
在这个树1或者树2里,百分比数值叫权值
类似结点D,E等叫带权结点(Weight)
类似树里的边(60->70->80->90->E)叫带权路径
WPL:整棵树的带权路径长度。
树①:$10×1+ 15×2+30×3+40×4+5×4=310$。
树②:$10×3+15×3+30×2+40×2+5×2=225 $。

Haffman构造方法

  1. 将所有带权结点,按照从权值大小进行从小到大的排序
  2. 在排好序的序列中,拿出前两个最小的,由二者构成一个新结点
  3. 将构成的新结点,放到序列中,重新排序
  4. 重复步骤2 步骤3,直到把结点放完为止(剩一个结点)
    ps:按照左小右大的规则放置结点,也可以左大右小,只要定下来,剩下结点放置必须遵守
    2
    设最终的树为③
    树③的WPL:$10×4+15×3+30×2=40×1+5×4=205$

Haffman编码优化

若要发送一串形如ABCCCDFEE....的编码,用Haffman编码优化最优
根据上一知识点,构成树③每个分枝左0右1,如上图,
即得A:1101,B:111,C:10,D:0,E:1100,此时没有一个编码是其他编码的前缀,不会产生歧义。

相关文章

  • Haffman编码

    个人介绍及问题解决 表格 Haffman构造方法 将所有带权结点,按照从权值大小进行从小到大的排序 在排好序的序列...

  • 笔记6- 二叉树之 Haffman树、AVL树、红黑树

    Haffman树 1.概念和构造: 我们来看一个案例: 重点理解一下路径长度和带权的路径长度的概念:(权重就是结点...

  • mysql编码

    查看编码 查看数据库编码 查看表编码 查看字段编码 修改编码格式 修改数据库编码格式 修改表编码 修改字段编码

  • 编码

    编码 编码格式(ASCII编码,GB2312编码(简体中文),GBK,ANSI编码,unicode,utf-8编码...

  • 网络安全编码书目录

    网络安全编码 Base64编码 MD5编码 SHA1编码 SHA256编码 HMAC编码

  • 前端开发文档规范

    HTML 编码规范 请查看HTML编码规范 CSS 编码规范 请查看CSS编码规范 JavaScript 编码规范...

  • 音频技术基础

    一、音频编码调制技术 根据编码方式的不同,音频编码技术分为三种:波形编码、参数编码和混合编码。一般来说,波形编码的...

  • 第五节课的第三个作业

    #编码 #编码

  • MPT 中对 key 的编码

    MPT中涉及到了三种编码,分别为keybytes编码、Hex编码和Compact编码。 keybytes 编码 这...

  • NSLocale

    国家编码语言编码货币符号货币编码 =============currentLocale==============...

网友评论

    本文标题:Haffman编码

    本文链接:https://www.haomeiwen.com/subject/kkmupttx.html