基于哈夫曼编码的压缩软件数 据 结 构 课 程 设 计(可编辑).docVIP

基于哈夫曼编码的压缩软件数 据 结 构 课 程 设 计(可编辑).doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于哈夫曼编码的压缩软件数 据 结 构 课 程 设 计(可编辑)

数 据 结 构 课 程 设 计 设计题目: 基于哈夫曼编码的压缩软件 学生姓名: 贾明 周俊 张旭 专业班级: 10 计科特色班B 指导教师: 余云 完成时间: 2012/5/11 信息工程 院 计算机科学与技术 系 安徽新华学院课程设计成绩评定表 本科 课题名称 基于哈夫曼编码的压缩软件 院 系 信息工程学院 年级专业 10计科特色 学 号 姓 名 组成员分工 成 绩 1042157134 贾明 设计及编写程序;修改程序;编写文档 1042157156 张旭 设计及编写程序;修改程序; 负责文档的图片编辑 1042157157 周俊 查找资料,收集信息;设计及调试程序 编写及整理文档 课题设计 目的与 设计意义 1、课题设计目的: 通过运用哈夫曼树的知识编写该压缩与解压软件,能使学生将所学的理论知识应用起来,有效地运用到解决实际问题中去,提高 学生的自身的编程能力,从而达到学以致用的目的。 2、课题设计意义: 通过这次课题实验的程序实践,我们了解额数据结构是本学期开 展的一门学科,学习好这门学科是非常重要的,在以后的程序设计方 面这门学科能给我们很大的帮助。同时,学习这门学科也是艰辛的, 这不仅需要我们要发挥我们的聪明才志,还需要我们在不断的实践中 领悟。 指导教师: 年 月 日 第一章 课程设计内容 3 第二章 需求分析 3 第三章 概要设计 4 第四章 调试情况,设计技巧及体会 5 第五章 测试结论 8 第六章 设计技巧 8 第七章 心得体会 9 第八章 参考文献 9 第九章 附录:源代码 9 课程设计内容 1. 应用系统分析,建立该系统的功能模块框图及界面的组织和设计; 2. 分析系统中的各个函数及它们之间的关系; 3. 根据问题描述,设计系统的结构体及各个函数; 4. 设计哈夫曼树的构造算法和哈夫曼编码算法; 5. 完成设计的系统各个应用模块; 6. 将各个模块整合进行功能测试。 需求分析 需求分析目的 为明确软件需求、安排项目规划与进度、组织软件开发与测试,供设计人员、开发 人员参考。 项目开发计划 时间 开发内容 5月8日 读取文本文件,并统计文件中字母个数 5月9日 建立哈夫曼树对文件,进行哈夫曼编码 5月10日 压缩与解压缩 任务目标 能比较完善的对txt文件进行压缩和解压缩。 数据字典 名称:字符频率 别名:weight 描述:读取文本文件,并统计文件中字母个数 定义:字符频率 字符 + 数量 名称:结点 别名:HTNode 描述:建立哈夫曼树的叶子和非叶子结点 定义:结点 数量 + 字符 + 双亲结点 + 左孩子结点 + 右孩子结点 位置:编码文件 功能划分 压缩 解压缩 概要设计 哈夫曼压缩软件 1.建立哈夫曼树。根据哈夫曼编码技术,可以将已经给出的字母的使用频率建立一个哈夫曼树,即以二叉树的形式将英文字母和空格存储。 ?2 .编码。利用二叉树的遍历知识,左孩子用“0”表示,右孩子用“1”表示,将输入的一组英文句子进行编码。 3 .测试和输出。程序要求的测试的英文句子是:“knowledge is power”,输出每一个字母然后给出相应的哈夫曼编码。本程序输入字母以“#”结束。 ?4 .译码。本程序要求对已编码的数字能够给以反编码。 调试情况,设计技巧及体会 测试过程 运行程序 压缩文件 解压文件 退出 测试结论 能较好地对文本文档进行压缩和解压 不足的是其它对类型的文件不适用 设计技巧 本软件可对字母、汉字可以实现共同压缩,压缩率在20%以上,压缩后对哈夫曼树进行保存,以便后面解压,对叶子结点只保存其字符、左孩子、右孩子,对非叶子结点保存左孩子和右孩子。解压时从根结点开始,利用哈夫曼树进行解压,遇到0,找左孩子,遇到1找右孩子,到叶子结点时,输出字符。 心得体会 通过这次课题实验的程序实践,我从中获益匪浅!数据结构是本学期开展的一门学科,学习好这门学科是非常重要的,在以后的程序设计方面这门学科能给我们很大的帮助。同时,学习这门学科也是艰辛的,这不仅需要我们要发挥我们的聪明才志,还需要我们在不断的实践中领悟。 这次的程序设计对我们来说无疑是一个检验,从接起课题后,我就一直为实现程序而努力,翻阅相关书籍、在网上查找资料。通过小组的努力与老师的指导,我对这次实验的原理有了一定的理解,通过参照从网上找到的源程序,终于在其它源程序的基

文档评论(0)

beoes + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档