Huffman编码就是利用每个字符出现频率的不一致,用长短不一的0、1字节来表示不同的字符以减少总数据大小。 假设我们有一包含10000个字符的文件,这些字 符仅由6个不同的字符组成,就设这6个字符分别为“abcdef”,下面的表给出了 这6个字符在整个文件中的占比,和两种不同的编码方式。
| a | b | c | d | e | f | |
|---|---|---|---|---|---|---|
| Frequency (in thousands) | 45 | 13 | 12 | 10 | 9 |
Huffman编码利用字符频率创建最优前缀编码,减少数据存储空间。通过构建二叉树,实现编码和解码过程。固定长度编码相比,可变长度的Huffman编码能节省约25%的空间。解码时,根据二叉树结构从根节点按编码路径找到字符。
Huffman编码就是利用每个字符出现频率的不一致,用长短不一的0、1字节来表示不同的字符以减少总数据大小。 假设我们有一包含10000个字符的文件,这些字 符仅由6个不同的字符组成,就设这6个字符分别为“abcdef”,下面的表给出了 这6个字符在整个文件中的占比,和两种不同的编码方式。
| a | b | c | d | e | f | |
|---|---|---|---|---|---|---|
| Frequency (in thousands) | 45 | 13 | 12 | 10 | 9 |
1万+
4871
6259

被折叠的 条评论
为什么被折叠?