?? huffman_a.h
字號:
#ifndef _HUFFMAN_A_HEADER_001_#define _HUFFMAN_A_HEADER_001_#include "huffman_base.h"#include <set>using namespace std;// 使用鏈表結構生成Huffman樹的算法,這是最基本的實現方法,效率最低class huffman_a : public huffman_base{public: huffman_a() {} virtual ~huffman_a(void) {}public: typedef struct HTNode_T { unsigned long weight; HTNode_T* parent; HTNode_T* lchild; HTNode_T* rchild; }HTNode, *HuffmanTree;public: void generate_codes(int num, const unsigned long* weights);protected: // 在s[0..n]中選擇weight最小且parent為NULL的兩個,返回其位置iterator void select(HuffmanTree* s, int n, int& s1, int& s2); // 遞歸釋放Huffman樹占用的空間 void free_tree(HuffmanTree tree);};#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -