指引网

当前位置: 主页 > 编程开发 > C >

数据结构:哈夫曼树的应用

来源:网络 作者:佚名 点击: 时间:2017-07-19 23:00
[摘要] 

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.h>a
#include<graphics.h>
#define MAXVALUE 200           /*权值的最大值*/
#define MAXBIT  30             /*最大的编码位数*/
#define MAXNODE 30             /*初始的最大的结点数*/
 struct haffnode
         {char data;
   int weight;
                        int flag;
                        int parent;       /*双亲结点的下标*/
                        int leftchild;    /*左孩子下标*/
                        int rightchild;   /*右孩子下标*/
         };
 struct haffcode
         {int bit[MAXNODE];
                        int start;        /*编码的起始下标*/
   char data;
   int weight;       /*字符权值*/
         };

 


/*函数说明*/
/************************************************************************/
void pprintf(struct haffcode haffcode[],int n);
/*输出函数*/
void haffmantree(int weight[],int n,struct haffnode hafftree[],char data[]);
/*建立哈夫曼树*/
void haffmancode(struct haffnode hafftree[],int n,struct haffcode haffcode[]);
/*求哈夫曼编码*/
void test(struct haffcode haffcode[],int n);
/*测试函数*/
void end();
/*结束界面函数*/
/************************************************************************/

 


<
------分隔线----------------------------