
用C++实现哈夫曼树的方案
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本简介介绍了一种使用C++编程语言来构建和实现哈夫曼树的具体方法。通过此方案,可以高效地进行数据编码与解码工作。
关于哈夫曼编码的浅显理解是它在压缩存储空间方面具有重要作用。例如,在存储一篇英文文章时,假设字母A出现的概率较高而Z出现的概率较低。如果采用常规的存储方式,每个字符占用的空间相同,那么即使A和Z的实际使用频率不同,它们所占的空间也一样大。然而通过哈夫曼编码方法,可以为高频使用的字符分配较短的编码长度。
以下是构造哈夫曼树及生成哈夫曼编码的相关定义:
一、节点类型定义如下:
```cpp
struct Node {
char C; // 字符
long key; // 权重(出现频率)
Node *Left, *Right,*parent;
Node() {
Left = Right = NULL;
}
};
```
二、树类型的定义包括三个要素:不定长数组,元素大小以及有效元素个数。
全部评论 (0)


