求英文文章的Huffman编码长度
一、题目
英文文章的Huffman编码。
二、题目描述
我们知道,字符在计算机中是以它的ASCII码表达的,而普通字符的ASCII都是7个
二进制位,实际上就是用一个字节(8个二进制位)存储的。如果一篇英文文章有100个
字符,则其长度为800个二进制位。通过网络传输一篇英文文章时如果能对它先压缩,
然后在接收方进行解压,就可以提高网络传输速度。Huffman编码就是一种方便在发送
发进行压缩和接收方解压的编码方式。
现要求从键盘输入一篇英文文章(保证只含小写英文字母和空格,没有任何其他
字符,但并不保证所有小写字母都同时出现),使用Huffman编码方式对该文章中的所
有字符重新编码,以实现对它的压缩,然后输出压缩比(即压缩后的二进制位数除以
压缩前的二进制位数)
输入
从键盘上输入一片英文文章
输出
输出压缩比。四舍五入后保留小数点后两位。例如结果为0.325,则输出0.33,下面的输出都算错误:
0.32; .33; 0.325; 00.33; +0.33; +.33
样例输入
this is just a test
样例输出
0.37