GZIP压缩原理分析(29)——第五章 Deflate算法详解(五20) 动态哈夫曼编码分析(09)构建哈夫曼树(01)
2016-07-31 11:07
615 查看
现在已经完成了对字符串“As mentioned above,there are many kinds of wireless systems other than cellular.”进行压缩的第一步,LZ77算法通过用长度距离对儿替换匹配串的方式将这句话在“字节”层面上压缩,压缩结果为
“As mentioned above,there a(3,4)many kinds of wireless system(3,20)(4,42) thancellular.”。
此时这个字符串中能够被替换的地方都已经被替换了,从现在开始的压缩,要在“比特”的层面上进行,即把上面的字符串从字节流转换成比特流,从而实现进一步的压缩。
注意观察上面LZ77之后的字符串,我们可以将这个字符串中的字符分为三类:literal、length、distance。将字节流转换成比特流的过程说白了就是用哈夫曼编码把这些字符转换成码字长度不同的二进制码字,其中,distance的转换可以通过构建distance树来完成,literal和length的转换可以通过构建literal/length(literal和length用同一棵哈夫曼树)树来完成。
“As mentioned above,there a(3,4)many kinds of wireless system(3,20)(4,42) thancellular.”。
此时这个字符串中能够被替换的地方都已经被替换了,从现在开始的压缩,要在“比特”的层面上进行,即把上面的字符串从字节流转换成比特流,从而实现进一步的压缩。
注意观察上面LZ77之后的字符串,我们可以将这个字符串中的字符分为三类:literal、length、distance。将字节流转换成比特流的过程说白了就是用哈夫曼编码把这些字符转换成码字长度不同的二进制码字,其中,distance的转换可以通过构建distance树来完成,literal和length的转换可以通过构建literal/length(literal和length用同一棵哈夫曼树)树来完成。
相关文章推荐
- GZIP压缩原理分析(30)——第五章 Deflate算法详解(五21) 动态哈夫曼编码分析(10)构建哈夫曼树(02)
- GZIP压缩原理分析(32)——第五章 Deflate算法详解(五23) 动态哈夫曼编码分析(12)构建哈夫曼树(04)
- GZIP压缩原理分析(33)——第五章 Deflate算法详解(五24) 动态哈夫曼编码分析(13)构建哈夫曼树(05)
- GZIP压缩原理分析(31)——第五章 Deflate算法详解(五22) 动态哈夫曼编码分析(11)构建哈夫曼树(03)
- GZIP压缩原理分析(22)——第五章 Deflate算法详解(五13) 动态哈夫曼编码分析(02) LZ77过程(01)
- GZIP压缩原理分析(21)——第五章 Deflate算法详解(五12) 动态哈夫曼编码分析(01) 本节说明
- GZIP压缩原理分析(24)——第五章 Deflate算法详解(五15) 动态哈夫曼编码分析(04) LZ77过程(03)
- GZIP压缩原理分析(25)——第五章 Deflate算法详解(五16) 动态哈夫曼编码分析(05) LZ77过程(04)
- GZIP压缩原理分析(20)——第五章 Deflate算法详解(五11) 算法分析(05) 格式说明(04) 动态哈夫曼编码
- GZIP压缩原理分析(23)——第五章 Deflate算法详解(五14) 动态哈夫曼编码分析(03) LZ77过程(02)
- GZIP压缩原理分析(28)——第五章 Deflate算法详解(五19) 动态哈夫曼编码分析(08) LZ77过程(07)
- GZIP压缩原理分析(26)——第五章 Deflate算法详解(五17) 动态哈夫曼编码分析(06) LZ77过程(05)
- GZIP压缩原理分析(27)——第五章 Deflate算法详解(五18) 动态哈夫曼编码分析(07) LZ77过程(06)
- GZIP压缩原理分析(14)——第五章 Deflate算法详解(五05) 预备知识(04) 前缀码、原始哈夫曼编码原理以及deflate所用哈夫曼编码的性质
- GZIP压缩原理分析(16)——第五章 Deflate算法详解(五07) 算法分析(01) 本节概述
- GZIP压缩原理分析(17)——第五章 Deflate算法详解(五08) 算法分析(02) 格式说明(01) 块首部
- GZIP压缩原理分析(15)——第五章 Deflate算法详解(五06) 预备知识(05) 预备知识总结
- GZIP压缩原理分析(18)——第五章 Deflate算法详解(五09) 算法分析(03) 格式说明(02) 存储类型
- GZIP压缩原理分析(12)——第五章 Deflate算法详解(五03) 预备知识(02) 压缩“窗口”概念
- GZIP压缩原理分析(13)——第五章 Deflate算法详解(五04) 预备知识(03) 游程编码