电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

哈夫曼编码课程设计推荐文档VIP免费

哈夫曼编码课程设计推荐文档_第1页
1/9
哈夫曼编码课程设计推荐文档_第2页
2/9
哈夫曼编码课程设计推荐文档_第3页
3/9
1 湖南科技学院课程设计报告课程名称:数据结构课程设计课程设计题目:哈夫曼编码系:数学与计算科学系专业:信息与计算科学年级、班:信计 0901姓名:郭如华学号:200905002145 指导教师:牛志毅职称:讲师2011 年 12 月2 目录1 问题描述 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯32 基本要求 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3 3 测试数据 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯34 算法思想 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯35 模块划分 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3 6 数据结构 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯37 源程序 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯48 测试情况 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯99 设计总结 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯910 参考资料 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯93 1 问题描述设计一个哈夫曼编码系统, 对文档中的报文进行编码, 输出这段报文的哈夫曼编码,并且可以对输入的哈夫曼编码进行译码。2 基本要求从文档中读取报文 (如"what did you do that made you so happy")进行编码输出这段报文的哈夫曼编码。3 测试数据what did you do that made you so happy 4 算法思想①:从文件中读取lei.txt 并到数组 z(保存所有字符的种类 ),读取 data,txt 存到数组 ch(保存统计频数的一个样本) 。②:对数组 z 和数组 ch 进行比较统计出每个字符出现的频数,以频数代替权值,并把权值赋值到 ht.weight 的的数组中。③:利用权值创建哈夫曼树。④:利用哈夫曼树求的哈夫曼编码。把lei.txt 的数据赋值到 hcd.ch中,把编好的哈夫曼编码赋值到hcd.code,则 hcd 这个数组就是一个哈夫曼编码的集合,hcd.ch对应的下标就是这个字符所对应的哈夫曼编码。⑤:输入要编码的字符,保存到ch 数组,把 ch 数组的 ch[j] 元素逐个与 hcd[i].ch比较找出下标 i,则 hcd[i].code 为 ch[j] 元素的哈夫曼编码。⑥:输入要译码的哈夫曼编码lcd,逐个与 hcd[i].code 比较,找出下标 i,则 hcd[i].ch为 lcd 所对应的字符。5 模块划分①: void inithuffmantree(huffmantree ht);/* 初始化哈夫曼树 */ ②: void tongji(huffmantree ht,huffmancode hcd,char *ch,char *z);/* 统计权值 */ ③: void selectmin(huffmantree ht, int i, int *p1, int *p2);/* 选择最小的权值 */ ④: void createhuffmantree(h...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

哈夫曼编码课程设计推荐文档

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部