全球旧事资料 分类
课程设计说明书
课程名称数据结构与算法
设计题目哈夫曼编译码器
院系计算机科学与信息工程学院
学生姓名
学号
专业班级软件工程162
指导教师
2017年12月11日
ff课程设计任务书
f哈夫曼编译码器
摘要采用哈夫曼编码思想实现对字符串的编码以及对编码的解码。字符串的长度不小于5000字节。读取要编码的文本文件将文件的内容进行编码生成新的文件。对编码文件进行解码获得文本文件。将译码的文本文件和原文件进行比较恢复文件和原文件必须完全一致。
关键词构建哈夫曼树哈弗曼编码哈夫曼译码字符串编码打印编码函数
f目录
1设计背景1
11哈夫曼树的介绍1
12设计的作用、目的1
13设计任务及要求2
2设计方案2
21实验内容2
22操作思路2
23基本操作3
3方案实施4
31C语言编程4
32程序介绍12
33程序流程图以及说明13
图3主程序流程图13
4结果与结论14
41程序运行结果14
42总结16
5收获与致谢17
6参考文献17
f1设计背景
11哈夫曼树的介绍
Huffma
Tree中文名是哈夫曼树或霍夫曼树或者赫夫曼树它是最优二叉树。定义给定
个权值作为
个叶子结点构造一棵二叉树若树的带权路径长度达到最小则这棵树被称为哈夫曼树。
01路径和路径长度
定义在一棵树中从一个结点往下可以达到的孩子或孙子结点之间的通路称为路径。通路中分支的数目称为路径长度。若规定根结点的层数为1则从根结点到第L层结点的路径长度为L1。
02结点的权及带权路径长度
定义若将树中结点赋给一个有着某种含义的数值则这个数值称为该结点的权。结点的带权路径长度为从根结点到该结点之间的路径长度与该结点的权的乘积。
03树的带权路径长度
定义树的带权路径长度规定为所有叶子结点的带权路径长度之和记为WPL。
12设计的作用、目的
通过完成具体编码算法的程序设计和调试工作提高编程能力深刻理解信源编码、信道编译码的基本思想和目的掌握编码的基本原理与编码过程增强逻辑思维能力培养和提高自学能力以及综合运用所学理论知识去分析解决实际问题的能力逐步熟悉开展科学实践的程序和方法。主要目的是加深对理论知识的理解掌握查阅有关资料的技能提高实践技能培养独立分析问题、解决问题及实际应用的能力。
通过课程设计各环节的实践应达到如下要求
1理解无失真信源编码的理论基础掌握无失真信源编码的基本方法
2根据哈夫曼编码算法考虑一个有多种可能符号各种符号发生的概率不同的信源得到哈夫曼编码和码树
3掌握哈夫曼编码的优缺点
f4通过完r
好听全球资料 返回顶部