哈夫曼树的基本概念
哈夫曼树的构造算法
哈夫曼树的构造示例
哈夫曼编码的基本概念
哈夫曼编码的程序实现

存储结构

采用顺序存储结构–一维结构数组

哈夫曼树中共有 2n-1 个结点,不使用 0 下标,数组大小为 2n。

结点类型定义

typedef struct
{
    int weight;
    int parent,lchild,rchild;
}HTNode,*HuffmanTree;

示例

例如,有 n = 8,权值为 W = {7 19 2 6 32 3 21 10}

构造哈夫曼树

weightparentlchrch
71100
191300
2900
61000
321100
3900
211300
101100
51036
111249
171218
28141011
401527
6015512
100000

对应的哈夫曼树为

在这里插入图片描述

更多推荐