【文件属性】:
文件名称:赫夫曼编码(C语言版本)
文件大小:6KB
文件格式:TXT
更新时间:2012-03-23 09:28:51
数据结构课程设计之赫夫曼编码
#include
#define MAXBIT 2000 /*定义哈夫曼编码的最大长度*/
#define MAXVALUE 1000 /*定义最大权值*/
#define MAXLEAF 256 /*定义哈夫曼树中最多叶子节点个数*/
#define MAXNODE MAXLEAF*2-1 /*哈夫曼树最多结点数*/
typedef struct { /*哈夫曼编码结信息的构*/
char bit[MAXBIT];
int start;
}Hcodetype;
typedef struct { /*哈夫曼树结点的结构*/
int weight;
int parent;
int lchild;
int rchild;
char ch;
}Hnodetype;
char ch[MAXVALUE*5];
static int numbers;
int number=0;
char varyCh[MAXLEAF];
int weight[MAXLEAF];
int pos[256];
int root;
char allHc[MAXVALUE*20];
/*----------分析输入的字符串--------------*/
void analyze(char ch[],int numbers,char varyCh[],int weight[],int& number){
int temp[256]={0};
int n=0;
for(int i=0;i