- Code Filepath:src
- data file:weigth.csv
试编写一个Huffman编码系统,用于数据加密和解密。该系统应具有以下功能:
- 初始化:从键盘中可读取通信所使用的字符集和每个字符的权值。例如下表。
- 加密:利用初始化中的数据建立Huffman树,对任意的可加密的字符串进行加密。
- 解密:对任何的加密结果进行解密。
字符 空格 A B C D E F G H
频数 186 64 13 22 32 103 21 15 47
字符 I J K L M N O P Q
频数 57 1 5 32 20 57 63 15 1
字符 R S T U V W X Y Z
频数 48 51 80 23 8 18 1 16 1
扩展功能:
- 支持从Excel表格导入字符集和权重值,格式见压缩包中的weight.csv
- 支持将构造的Huffman树用类似于下图的可视化方式打印在屏幕上:
2
/ \
/ \
/ \
/ \
7 5
/ \ / \
/ \ / \
2 6 3 6
/ \ / \ / \ / \
5 8 4 5 8 4 5 8