|
知识路径: > 多媒体数据压缩编码技术基础 > 统计编码 > 字典编码 > 字典编码 > 算法 >
|
考试要求:熟悉
相关知识点:2个
|
|
|
|
为了更好地说明LZ77算法的原理,首先介绍该算法中的几个术语。
|
|
|
|
|
. 编码位置:输入流中当前要编码的字符位置,指前向缓冲存储器中的开始字符。
|
|
|
. 前向缓存:存放从编码位置到输入流结束的字符序列。
|
|
|
. 窗口:包含W个字符的窗口,字符是从编码位置开始往后数的,也就是最后处理的字符数。
|
|
|
|
LZ77算法的核心是查找从前向缓冲存储器开始的最长的匹配串。该算法的具体执行步骤如下。
|
|
|
|
|
步骤3:以(Pointer, Length)Characters的格式输出。其中Pointer是指向窗口中匹配串的指针,Length表示匹配字符的长度,Characters是前向缓存中不匹配的第1个字符。
|
|
|
步骤4:如果前向缓冲存储器不是空的,则把编码位置和窗口向前移(Length+1)个字符,然后返回步骤2。
|
|
|