下载后可任意编辑软件学院设计性实验报告专业:
NET 年级/班级: 2024—2024 学年第一学期课程名称数据结构指导老师本组成员学号姓名实验地点实验时间第十二、十三、十四周项目名称哈夫曼编/译码系统的设计与实现实验类型设计性1.问题描述:利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本
但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(解码)
对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统
试为这样的信息收发站设计一个哈夫曼编/译码系统
2.一个完整的系统应具有以下功能:1)初始化(Initialzation)
从数据文件 DataFile
data 中读入字符及每个字符的权值,建立哈夫曼树 HuffTree;2)编码(EnCoding)
用已建好的哈夫曼树,对文件 ToBeTran
data 中的文本进行编码形成报文,将报文写在文件 Code
txt 中;3)译码(Decoding)
利用已建好的哈夫曼树,对文件 CodeFile
data 中的代码进行解码形成原文,结果存入文件 Textfile
txt 中;4)输出(Output): 输出 DataFile
data 中出现的字符以及各字符出现的频度(或概率);输出 ToBeTran
data 及其报文 Code
txt;输出 CodeFile
data 及其原文 Textfile
txt;要求:所设计的系统应能在程序执行的过程中,根据实际情况(不同的输入)建立DataFile
data、ToBeTran
data 和 CodeFile
data 三个文件,以保证系统的通用性
一、实验目的1、掌握哈夫曼编码原理;2、熟练掌握哈夫曼树的生成方法; 3、理解数据编码压缩和译码输出编码的实现
二、实验要求实现哈夫曼编码和译码的生成