哈夫曼编码/译码器(C++编写)

设计要求:
设计一个哈夫曼编码、译码系统。对一个ASCII编码的文本文件中的字符进行哈夫曼编码,生成编码文件;反过来,可将编码文件译码还原为一个文本文件。
(1)从文件中读入任意一篇英文短文(文件为ASCII编码,扩展名为txt);
(2)统计并输出不同字符在文章中出现的频率(空格、换行、标点等也按字符处理);
(3)根据字符频率构造哈夫曼树,并给出每个字符的哈夫曼编码;
(4)图形化输出哈夫曼树、哈夫曼编码;
(5)将文本文件利用哈夫曼树进行编码,存储成压缩文件(编码文件后缀名.huf)
(6)用哈夫曼编码来存储文件,并和输入文本文件大小进行比较,计算文件压缩率;
(7)进行译码,将huf文件译码为ASCII编码的txt文件,与原txt文件进行比较。
测试数据:
文本文件自行选择,至少含3000个字符。

第1个回答  2014-01-05
建议先学习一下数据结构这门课