1.输入一个文本,统计各字符出现的频度,输出结果; 2.使用三叉链表作存储结构,构造哈夫曼树; 3.确定和输出各字符的哈夫曼码; 4.将输入的文本进行编码,输出编码后的二进制代码序列; 5.将接收到的二进制代码序列进行译码,并输出结果。 概要设计 a)数据流图和流程图: ... b)定义结构数组,以便统计字符频度: struct node { char data; int count; }nodes[80]; c)哈夫曼(Huffman)树节点单元的结构定义如下: struct htree{ char data1; int num1; struct htree *left; struct htree *right; struct htree *parent; }huf; d)定义结构数组存放各字符及其对应的huffman编码: struct changecode{ char data; char bcode[80]; }changecodes[80]; e)函数功能设计如下: void main(void) ü 主函数; ü 调用各子函数以实现要求的各功能。 int win1(void) ...... |