hafuman.h

来自「哈弗曼编码的递归实现算法」· C头文件 代码 · 共 39 行

H
39
字号
//程序名:hafuman.h
//程序功能:哈弗曼树类的头文件
//作者:黄秋旋
//2008.12.4
//版本:1.0

#include<iostream>
#include<fstream>
using namespace std;
////////////////////////////////////////////////////////////////////////////////////////////////////////////////

struct HaffNode                            //定义哈夫曼树节点结构
{
	int weight;
	int lchild;
	int rchild;
	int parent;
};


class HaffmanTree             //定义哈弗曼树的类
{
private:
	HaffNode *ht;      //哈弗曼树的节点指针
	int leafnum;       //叶子个数
	char *yezi;        //初始化字符指针
	

public:
	HaffmanTree(){leafnum=0; ht=NULL; yezi=NULL;};      //构造函数
	~HaffmanTree(){};       //析构函数
    int Haffman();    //初始化函数
    void Encode();    //编码函数
    void Decode() ;   //译码函数
	void Print();     //印代码文件函数
    void PrintTree();    //印哈弗曼树函数
    void Printline(HaffNode ht[],char yezi[],int j,int len);    //以凹型表示,印哈弗曼树的递归函数
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?