标准
中南大学
数据结构课程设计报告
题 目 哈夫曼编译器 学生姓名 孙毅 指导教师 杨希
学 院 信息科学与工程学院 专业班级 信息安全1401班
二○一六年 十一 月
文案
标准
目录
一、课程设计目的........................................................................................................ 3 二、课程设计的内容.................................................................................................................. 3
2.1、问题描述....................................................................................................... 3 2.2、基本要求....................................................................................................... 3 三、 问题描述,解决的方法 .................................................................................................. 3
3.1从键盘读入字符集大小n , 以及n个字符和权值,建立哈夫曼树。..... 3 3.2利用已建好的哈夫曼树对文件正文进行编码,将结果存入相关文件中。5 3.3利用已建好的哈夫曼树将编码文件中的代码进行译码,结果存入文件中。................................................................................................................................. 6 3.4输出代码文件,以紧凑格式显示。.............................................................. 7 3.5以直观的方式输出哈夫曼树,同时将此字符形式的哈夫曼树写入文件中。................................................................................................................................. 7 四、 程序模块功能,程序设计组成框图、流程图 ......................................................... 8
4.1程序模块功能.................................................................................................. 8 4.2程序设计框图.................................................................................................. 8 4.3流程图 .............................................................................................................. 9 五、 调试与测试。调试方法,测试结果的分析与讨论,遇到的主要问题及采取的解决措施。.............................................................................................................. 10
5.1调试方面........................................................................................................ 10 5.2测试结果方面................................................................................................ 10 六、测试结果,用几组测试数据进行测试算法设计的正确性.............................. 10
6.1第一组数据如下............................................................................................ 10 6.2第二组测试数据如下:................................................................................ 14 七、 本次课程设计的心得体会................................................................................ 16 八、 附录:源程序清单............................................................................................ 17
文案
标准
一、课程设计目的
数据结构是计算机专业的核心课程,是计算机科学的算法理论基础和软件设计的技术基础,实践性强,课程设计是加强学生实践能力的一个重要手段。课程设计要求学生在完成程序设计的同时能够写出规范的设计报告,培养学生分析问题、解决问题,提高学生软件设计能力。
二、课程设计的内容
哈夫曼编译器
2.1、问题描述
利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码。对于双向传输信息的信道,每端都需要一个完整的编译码系统。为这样的信息收发站编写哈夫曼编译系统。 2.2、基本要求
(1)从键盘读入字符集大小n , 以及n个字符和权值,建立哈夫曼树。 (2)利用已建好的哈夫曼树对文件正文进行编码,将结果存入相关文件中。 (3)利用已建好的哈夫曼树将编码文件中的代码进行译码,结果存入文件中。 (4)输出代码文件,以紧凑格式显示。
(5)以直观的方式输出哈夫曼树,同时将此字符形式的哈夫曼树写入文件中。
三、问题描述,解决的方法
3.1从键盘读入字符集大小n , 以及n个字符和权值,建立哈夫曼树。
a.首先设计一个结构体,成员有权值、左右儿子、以及字符本身,再设计一个输入函数,函数中要求输入字符集大小n,以及这n个字符和他们各自对应的权值。
文案
标准
b.再根据以上的各种输入结合建立哈夫曼树的思想原理建立起哈夫曼树,设计的函数包括有两个,一个是选中最小权值的两棵树,另一个是创建哈夫曼树。
文案
相关推荐: