数据结构哈弗曼编码实验详解.doc

哈弗曼 编码及译码 #include iostream.h #include math.h #include stdlib.h #include string.h #define MAXSIZE 100 //最多子叶数 #define MAXCODE 10000 //编码最大长度 typedef struct { char info; //关联字符信息 unsigned int weight; //每个节点的权职 unsigned int parent, lchild, rchild; }HTNode,*HuffmanTree; typedef char **HuffmanCode; //存储哈弗曼编码 void Select(HuffmanTree HT, int j,int s1,int s2) {//选择双亲节点为0,并且最小的两个子叶节点 int i=1,m; while(HT[i].parent!=0) i++; //找第一个双亲节点为0的子叶结点 for(s2=s1=i;ij;i++) {//保证s1中的权值最小,s2次小 if(HT[i].parent==0 HT[i].weightHT[s1].weight) { s2=s

文档评论(0)

1亿VIP精品文档

相关文档