实验 1 通讯录
班级:_信 A0912_________学号:10914010214 姓名:_黎方江_________ 成绩:_____
_____
指导教师签名:__________
一、问题描述
根据给定字符的使用频率,为其设计哈夫曼编码。
设计要求:
1.功能:求出 n 个字符的哈夫曼编码。
2.输入:输入 n 个字符和字符在电文中的使用频率。
3.输出:n 个字符的哈夫曼编码。
二、问题分析
想求出 n 个字符的哈弗曼编码,就得先求出所对应的哈弗曼树,然后根据生成的哈夫曼
树生成对应的哈弗曼编码即可。
三、算法设计
1.数据结构设计
//定义哈夫曼树结构体
typedef struct
{ int weight; //权值
int parent; //父节点
int Lchild; //左孩子
int Rchild; //右孩子
}HFMNode,Hafumantree[m+1];//0 号单元不用;
//定义一个哈弗曼编码结构体
typedef struct
{
char ch; //存放编码的字符;
char bits[9]; //存放编码的位串;
int len; //编码起始位置;