专题设计:霍夫曼树
杨俊华
一.问题描述
在信息通信过程中,我们需要传输大量文件。在大的文件中有许
多冗余,为了提高信道利用率、缩短信息传输时间、降低传输成本,
我们设计一个编译系统,发送方利用哈夫曼编码对文件进行压缩后传
输,接收方将接收到的数据进行译码。
二.设计要求
传输文件存于文本文件中,如:源文件 textfile。基于哈夫
曼编码的信息通信系统具体要求如下:
a.预处理:从文件中读取数据,处理并建立字符集频率表。
即统计源文件中各字符出现的频度,以字符出现频度为权建立字
符集频率表。
b.初始化:利用字符集频率表建立哈夫曼树。
C.编码:利用建立好的哈夫曼树对源文件进行编码,实现
文件压缩,然后将结果以文件形式保存,如编码文件 codefile。
d.译码:利用建立好的哈夫曼树对 codefile 中的代码进行译
码。结果存入译码文件 decofile 中。
e.输出:可以显示 testfile、codefile、decofile 和哈夫曼树。