数据结构-哈夫曼树建立编码及打印
发布时间
阅读量:
阅读量
对输入的英文大写字母进行概率统计,并基于此生成哈夫曼树,最终输出的Huffman编码需按照概率从高到低的顺序排列。
#include <iostream>
#include <queue>
#include <cstring>
#include <vector>
#include <cstdio>
#include <algorithm>
using namespace std;
class Node
{
public:
int freq;
char val;
Node *left,*right;
Node(): freq(0), val('0'), left(NULL), right(NULL) {}
};
struct Cmp
{
bool operator() (const Node * a, const Node * b) const
{
return a->freq > b->freq;
}
};
priority_queue<Node*, vector<Node*>, Cmp> myQueue;
struct PrintNode
{
全部评论 (0)
还没有任何评论哟~
