if(!HC)
{
printf("HuffmanCode malloc faild!");
exit(-1);
}
//临时空间,用来保存每次求得的赫夫曼编码串
char *code = (char *)malloc(n*sizeof(char));
if(!code)
{
printf("code malloc faild!");
exit(-1);
}
code[n-1] = '\0'; //编码结束符,亦是字符数组的结束标志
//求每个字符的赫夫曼编码
int i;
for(i=0;i
我们以上面给出的5、4、3、2、1这五个权值为例,得到的编码结果如下:
下载地址:http://download.csdn.net/detail/mmc_maodun/6923741
|