哈夫曼树
2016-11-19 13:04:15 0 举报
哈夫曼树
作者其他创作
大纲/内容
结束
cd[start]='0';
HT[f].lchild=c
no
动态申请2n个单元;i=0;j=0;
i=1
i=n
i=m
获取字符串中不同的字符,并存在字符数组X2中
start=n-1;c=i;f=HT[i].parent;
yes
HT[i]的双亲、左孩子和右孩子初始化为0i++
i=不同字符数+1
cd[start]='1';
delete cd;
输入x
输出哈夫曼编码
HC动态分配n+1单元;分配临时动态数组cd,大小为n
定义字符串x;整数n,m;哈夫曼树HT;哈夫曼编码HC
i=1;m=2*字符串长度-1;
--start;
HT[s1].parent=i;HT[s2].parent=i;HT[i].lchild=s1;HT[i].rchild=s2;HT[i].weight=HT[s1].weight+HT[s2].weight;i++;
x等于0
计算各个字符的个数;
开始
得到HT【i】的权值i++
n等于x的字符数
c=f;\tf=HT[f].parent;
输出各个字符和对应的个数
f!=0
cd【n-1】=0;i=1;
0 条评论
下一页