满意答案

tyx4953068

推荐于 2017.11.26

采纳率:43%    等级:11

已帮助:10064人

太复杂了,楼主一会记得多给我点分!谢谢啦!

先设权w=(31,22,18,14,10,4,1),n=7,则m=13,按照哈夫曼算法可以构造一棵哈夫曼树如下:

100

40 60

22 18 31 29

14 15

10 5

4 1

末端结点为22,18,31,14,10,4,1,你自己把上面的加上线连成一棵二叉树就行,记得左分支标0,右分支标1(为了得出后面的哈夫曼编码HC)

然后需要列出HT初态表和HT终态表,如下:

HT初态表 HT终态表

weight parent lchild rchild weight parent lchild rchild

1 31 0 0 0 31 12 0 0

2 22 0 0 0 22 11 0 0

3 18 0 0 0 18 11 0 0

4 14 0 0 0 14 10 0 0

5 10 0 0 0 10 9 0 0

6 4 0 0 0 4 8 0 0

7 1 0 0 0 1 8 0 0

8 - 0 0 0 5 9 6 7

9 - 0 0 0 15 10 5 8

10 - 0 0 0 29 12 4 9

11 - 0 0 0 40 13 2 3

12 - 0 0 0 60 13 1 10

13 - 0 0 0 100 0 11 12

最后得出哈夫曼编码HC:

1——>10

2——>00

3——>01

4——>110

5——>1110

6——>11110

7——>11111

平均码字长度为(0.31+0.22+0.18)×2+0.14×3+0.1×4

+(0.04+0.01)×5=2.47

编码效率为[(1-0.01)×3+0.01×2]/2.47=1.21

解答完毕!

补充:对于其中的编码效率问题本人有点淡忘,我选择的是用

普通平均编码长度除上了哈夫曼平均编码长度得出,不知对否。

辛苦半天,望楼主能赐我分数,不胜感激!

注:提交后发现格式不太规整,对于哈夫曼树谁是谁的左孩子、右孩子比较容易分出(左右孩子结点相加可知父亲结点),对于HT初态表和HT终态表1列1列的看就行!其中数字第一列为序号,从第2列到第9列分别对应HT初态表的weight parent lchild rchild 和HT终态表的weight parent lchild rchild 。

272分享举报

哈夫曼编码c语言例题,关于哈夫曼编码试题的计算相关推荐

  1. 哈夫曼字符串编码c语言实现,基于哈夫曼(haffuman)算法的文件压缩的实现(C语言)(原创)...

    本文首先简要阐述哈夫曼算法的基本思想,然后介绍了使用哈夫曼算法进行文件压缩和解压缩的 处理步骤,最后给出了C语言实现的文件压缩和解压缩的源代码. 哈夫曼算法的主要思想是: ①首先遍历要处理的字符串,得 ...

  2. 二进制哈夫曼编码c语言实现,二进制霍夫曼编码

    通过查看其他博客的内容,整理一篇关于二进制霍夫曼编码的笔记供大家参考和讨论,如果有错误,欢迎大家联系我批评指正. 一.二进制霍夫曼的原理 我们可以将二进制霍夫曼编码拆分理解: 二进制即 0.1: 二进 ...

  3. 蓝桥哈夫曼树C语言,实验四 哈夫曼树及哈夫曼编码

    实验目的## 掌握哈夫曼树的概念.哈夫曼编码及其应用. 掌握生成哈夫曼树的算法. 会用哈夫曼树对传输报文进行编码. 掌握二叉树的二叉链表存储方式及相应操作的实现. ##实验内容## 用哈夫曼编码进行通 ...

  4. HuffMan编码C语言实现

    HuffMan编码C语言实现 实现了一种编码方式,和两种解码方式. 解码一种使用的是叶子回溯根. 一种使用了从根遍历过程. 代码: HuffManEncoding // // Created by Z ...

  5. C语言Huffman Encode霍夫曼编码的算法(附完整源码)

    C语言Huffman Encode霍夫曼编码的算法 C语言Huffman Encode霍夫曼编码的算法完整源码(定义,实现,main函数测试) C语言Huffman Encode霍夫曼编码的算法完整源 ...

  6. 哈夫曼编码c语言论文,哈夫曼编码的实现及应用论文.doc

    哈夫曼编码的实现及应用论文 毕 业 设 计(论文) 题目 哈夫曼编码的实现 及应用 二级学院 数学与统计学院 专 业 信息与计算科学 班 级 学生姓名 张泽欣 学号 指导教师 职称 时 间 目录 摘要 ...

  7. 哈夫曼编码c语言实现

    哈夫曼编码的原理看 百度百科 先生成一个哈夫曼树,参考 哈夫曼树c语言实现 生成接近等长码 须要注意的是,为了缩短码长方差,且编出的码更接近于等长码,排序的时候,第一优先级为概率大小,第二优先级为左节 ...

  8. 信息论 输入概率的哈夫曼编码 C语言

    信息论 哈夫曼编码 C语言 哈夫曼编码是一种效率比较高的变长无失真信源编码方法.哈夫曼编码的编码方法,步骤如下: 将信源符号按概率从大到小的顺序排列,为方便起见,令p(a1)>=p(a2)> ...

  9. 信息论霍夫曼编码c语言,Huffman 信息论与编码 - 下载 - 搜珍网

    霍夫曼编码/Shiyan4/Shiyan.sln 霍夫曼编码/Shiyan4/Shiyan.suo 霍夫曼编码/Shiyan4/Shiyan.v11.suo 霍夫曼编码/Shiyan4/Shiyan4 ...

  10. 香农费诺编码 c语言实现,对于香农编码、费诺编码和哈夫曼编码,编码方法惟一的是()。...

    问题标题 对于香农编码.费诺编码和哈夫曼编码,编码方法惟一的是(). 2019-8-15来自ip:15.170.14.227的网友咨询 浏览量:533 手机版 问题补充: 题目类型:[填空题] 对于香 ...

最新文章

  1. Silve“.NET研究”rlight 游戏开发小技巧:传说中的透视跑马灯
  2. 第十天2017/04/21(2、泛型编程:模板 / 全特化、偏特化)
  3. C#验证Email是否真正存在,不是验证邮件格式,是邮件地址是否存在 .
  4. My way on Linux - 知识梳理计划
  5. myeclipse如何修改Web项目名称
  6. 国嵌c语言深度,国嵌C语言3部全
  7. 手把手教你写竞品分析
  8. 踵事增华:新形势下如何高效撰写科技论文!
  9. jQuery设置下拉框select 默认选中第一个option
  10. CSC联合培养加拿大工签攻略
  11. 步进电机基础及工作原理
  12. Debian10校准时间同步系统时间和硬件时间的方法
  13. 快速入门了解后端网络方面必备知识
  14. python多线程爬取美图录网站图集按模特姓名存储到本地(二)
  15. 2023最新最新ChatGPT超全面从基础到实战视频教程/有兴趣自己学
  16. 网络信息化时代,3D产品建模宣传很到位
  17. 希尔伯特变换求瞬时频率的matlab动态实现
  18. Aspose.PDF 23.1.0 for .NET Crack
  19. python给列表的N个元素赋值-*表达式
  20. Fraud Busters

热门文章

  1. c语言病毒编写教程,来来来,教你一个用C语言写个小病毒
  2. 电子元器件篇—共模电感
  3. 令牌桶限流-java实现
  4. 在虚拟机centos7中使用docker安装nginx后,本地浏览器无法访问?
  5. 分频器+计数器+数码管显示VHDL
  6. 成都理工大学乐千桤java考试,成都理工大学方案.PDF
  7. Socket通讯之UDP
  8. 摄像机标定原理与操作
  9. 清华计算机系研究生刘艺华,2017年清华大学计算机系硕士录取名单
  10. lol大脚一直卡在读取服务器信息,英雄联盟大脚 - 英雄联盟 - LOL英雄联盟官网 - 英雄联盟攻略 - 英雄联盟专题站...