文件名称:lz77:LZ77压缩机和减压器
文件大小:12KB
文件格式:ZIP
更新时间:2024-05-19 23:27:03
C
LZ77
Lempel,Ziv编码和解码
描述
LZ77是Abraham Lempel和Jacob Ziv于1977年发布的无损数据压缩算法。它是一种字典编码器,在压缩过程中保持滑动窗口。
滑动窗口分为两部分:
搜索缓冲区(字典-编码数据)
前瞻(未压缩的数据)。
LZ77算法通过寻址以前内容而不是原始数据的字节序列来实现压缩。 所有数据将以相同的形式编码(称为令牌):
已编码内容的地址;
序列长度;
第一个偏离符号。
该窗口包含在固定大小的缓冲区中。
SB和LA之间的匹配是通过以数组形式实现的二叉树实现的。
通过项目中实现的bitIO库对已编码文件进行读写。 它允许对文件进行逐位读取和写入,而不像往常一样逐字节读取。
用法
句法:
./lz77
【文件预览】:
lz77-master
----bitio.h(1KB)
----lz77.h(625B)
----README.md(1KB)
----Makefile(387B)
----tree.c(10KB)
----bitio.c(11KB)
----lz77.c(10KB)
----.gitignore(11B)
----tree.h(1KB)
----main.c(6KB)