自己?/p>
c++
写的哈夫曼编?/p>
/
译码系统,经过反复测试,绝对没问题,请放心使
用?/p>
3
、哈夫曼编码
/
译码系统(树应用?/p>
[
问题描述
]
利用哈夫曼编码进行通信?/p>
可以压缩通信的数据量?/p>
提高传输效率?/p>
缩短?/p>
息的传输时间?/p>
还有一定的保密性?/p>
现在要求编写一程序模拟传输过程?/p>
实现?/p>
发送前将要发送的字符信息进行编码?/p>
然后进行发送,
接收后将传来的数据进?/p>
译码,即将信息还原成发送前的字符信息?/p>
[
实现提示
]
在本例中设置发送者和接受者两个功能,
发送者的功能包括?/p>
①输入待传送的字符信息?/p>
②统计字符信息中出现的字符种类数和各字符出现的次数(频率?/p>
?/p>
②根据字符的种类数和各自出现的次数建立哈夫曼树;
③利用以上哈夫曼树求出各字符的哈夫曼编码?/p>
④将字符信息转换成对应的编码信息进行传送?/p>
接受者的功能包括?/p>
①接收发送者传送来的编码信息;
②利用上述哈夫曼树对编码信息进行翻译?/p>
即将编码信息还原成发送前的字符信
息?/p>
从以上分析可发现,在本例中的主要算法有三个:
?/p>
1
)哈夫曼树的建立?/p>
?/p>
2
)哈夫曼编码的生成;
?/p>
3
)对编码信息的翻译?/p>
测试结果