- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关于霍夫曼编码
+
数据结构与算法大作业
题目:哈夫曼编码/译码器
姓名 学号 学院 专业 分工(按章节描述) 王萌电信 信息安全 C程序、CIN接口、报告 曹荣珍电信 通信 C程序及调试 李乃鹏电信 通信 前面板设计、报告 丁志东电信 通信 前面板设计、报告
2014年5月22日目录
目录 2
1课程设计的题目 3
1.1 题目描述及基本要求 3
1.2题目说明 3
1.3 进一步完成内容 3
2大作业要达到目的(需求) 4
2.1 编程环境介绍 4
2.2 大作业目的 4
2.2 大作业需求 4
3 Labview前面板及程序设计 5
3.1 前面板设计图 5
3.2 前面板功能介绍 5
3.3 后面板显示图 6
4 CIN接口设计 7
4.1 CIN节点的介绍 7
4.2 CIN节点的使用 7
4.3编译.c源文件为.lsb文件 7
5 C语言部分程序设计 9
5.1 C程序框图 9
5.2 C语言仿真结果 9
6整体设计总结 11
6.1 关于霍夫曼编码 11
6.2 关于labVIEW+C的开发模式 11
7心得体会 12
1课程设计的题目
1.1 题目描述及基本要求
设计一个利用哈夫曼算法的编码和译码系统,重复地显示并处理以下项目,直到选择退出为止。
(1)将权值数据存放在数据文件(文件名为data.txt,位于执行程序的当前目录中);
(2)分别采用动态和静态存储结构;
(3)初始化:键盘输入字符集大小n、n个字符和n个权值,建立哈夫曼树;
(4)编码:利用建好的哈夫曼树生成哈夫曼编码;
(5)输出编码;
(6)设字符集及频度如下表:
字符 空格 A B C D E F G H I J K L M
频度 186 64 13 22 32 103 21 15 47 57 1 5 32 20
字符 N O P Q R S T U V W X Y Z
频度 57 63 15 1 48 51 80 23 8 18 1 16 1
1.2题目说明
哈夫曼树,也称最优二叉树,是指对于一组带有确定权值的叶结点,构造的具有最小带权路径长度的二叉树。在哈夫曼树中,每个字符结点都是叶结点,它们不可能在根结点到其它字符结点的路径上,所以一个字符的哈夫曼编码不可能是另一个字符的哈夫曼编码的前缀,从而保证了译码的非二义性。
1.3 进一步完成内容
(1)译码功能。
(2)显示哈夫曼树。
(3)界面设计的优化。
2大作业要达到目的(需求)
2.1 编程环境介绍
(1)本实验基于C语言来开展。
(2)编程环境采用Labview2009和Visual C++6.0。
(3)程序的主体部分用Visual C++6.0进行编译,生成lsb文件。
(4)程序的输入输出部分用Labview完成。在Labview中的CIN中加载lsb文件。
(5)程序的演示均在Labview中完成。Labveiw是最易用的图形化软件开发环境之一,其采用的语言也是最容易使用的图形化开发语言之一,非常适合直观展示输入与输出的效果。
2.2 大作业目的
(1)巩固构造哈夫曼树的算法。
(2)设计实验用程序实现哈夫曼树的构造。
(3)熟悉用先序、中序或后序的访问方法得到个叶子结点的哈夫曼编码。
2.2 大作业需求
(1)二叉树的运用。对所学知识有一定的掌握,并且可以广泛应用,对二叉树,哈夫曼树有最基础的认识并且可以熟练运用。
(2)labview的运用。知道如何创建前面板,选择合适的控件实现题目要求。
(3)CIN接口控件的运用。知道如何建立labview与C语言之间的连接。
3 Labview前面板及程序设计
3.1 前面板设计图
由上图可见,前面板主要由三个部分构成,参数输入区、编译码区和哈夫曼树演示区。参数输入的设计信源符号的数量有上限限制,这里只以最多6个信源符号为例。
3.2 前面板功能介绍
(1)参数输入区
参数输入区包括信源符号以及对应的信源符号的概率,当输入完成后需要点击Test按钮来测试所输入的信源符号以及对应概率是否符合要求,符合要求时Test按钮右边的显示灯会变绿,否则变为红色,默认状态下是红色。这里有几种情况输入不符合要求的,比如:信源符号与概率不一一对应、概率之和不等于1。对输入数据进行有效性检查是必要的,它能够防止后续编译码出现异常。信源符号输入区以及先验概率输入区是使用两个不同的簇,信源符号编辑框为字符串输入,先验概率编辑框为数值输入。
(2)编码译码区
编码显示和译码显示使用两个簇来使结构更加清晰,两者编辑框都是字符串显示。字符串显示框默认下是灰色的,而字符串输入框是白色的。在进行数据有效性检查后,当点击编码时,对应信源符号的编码就会出现在框中。点击译码时,编码
您可能关注的文档
- 兰州化物所碳纳米材料场发射冷阴极研究取得系列进展-新能源.PDF
- 兰州大学编制外用工-兰州大学人事处.DOC
- 兰州大学教学研究项目立项申请书-兰州大学基础医学院.DOC
- 兰州山地初冬的一次近地面层观测试验U.PDF
- 植物多样性对人工湿地微宇宙甲烷排放的影响-生态学杂志.PDF
- 森林土壤氮转化与循环研究进展.PDF
- 公寓大厦之停车场车位问题-浙江大学学报.PDF
- 共享价值商业生态圈与企业竞争范式转变*.PDF
- 公式与函数基本操作.DOC
- 植物根的发育.PPT
- 甘肃省白银市会宁县第一中学2025届高三3月份第一次模拟考试化学试卷含解析.doc
- 2025届吉林市第一中学高考考前模拟生物试题含解析.doc
- 四川省三台县芦溪中学2025届高三下第一次测试生物试题含解析.doc
- 2025届江苏省启东市吕四中学高三适应性调研考试历史试题含解析.doc
- 浙江省宁波市十校2025届高三二诊模拟考试历史试卷含解析.doc
- 甘肃省甘南2025届高考生物必刷试卷含解析.doc
- 河北省石家庄市一中、唐山一中等“五个一”名校2025届高考历史四模试卷含解析.doc
- 江西省南昌市进贤一中2025届高考生物考前最后一卷预测卷含解析.doc
- 甘肃省白银市会宁县第四中学2025届高三第二次模拟考试历史试卷含解析.doc
- 宁夏银川市宁夏大学附属中学2025届高考化学押题试卷含解析.doc
文档评论(0)