数据结构:赫夫曼编码
发布时间
阅读量:
阅读量
具体表现如下:

【源程序如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct
{
int weight;
int parent,lchild,rchild;
}HTNode,*HuffmanTree; //动态分配数组存储赫夫曼树
typedef char **HuffmanCode;//动态分配数组存储赫夫曼编码表
void Select(HuffmanTree HT,int n,int &s1,int &s2)
{
int i;
s1=s2=0;
for(i=1;i<=n;i++)
{
if(HT[i].weight<HT[s2].weight&&HT[i].parent==0&&s2!=0)
{
if(HT[i].weight<HT[s1].weight)
{
s2=s1;
s1=i;
}
else
s2=i;
}
if((s1==0||s2==0)&&HT[i].parent==0)
全部评论 (0)
还没有任何评论哟~
