Lempel Ziv壓縮演算法

2022-09-03 13:06:08 字數 680 閱讀 8171

lempel-ziv, 簡稱lz, 擁有lz77, lz78, lzw幾種不同的演變演算法!lz是一種典型的字典型壓縮演算法, 巧妙的利用字典, 減少資訊量。

例子:原始編碼為: 101011011010101011

現在有空字典乙個, 首先由第一的bit開始, 索引1對應1,因為字典中沒有0這個元素, 所以索引2對應0, 第三個bit, 1已經出現在字典中, 我們推後一位10,沒有出現在字典中,因此索引為3加入字典。 以此類推!

索引最終用二進位制方式表示, 我們得到1,0,10,11,01,101,010,1011這8個字典項, 用3位碼可以表示, lz擴充套件了一位已表示各個元素間關係。 如下表就是乙個完整的字典:

字典位置

內容編碼

0011

0001 

0100

0000

01110

0010

10011

0011

10101

0101

110101

0111

111010

1010

1011

1101 

如上所示, 對應的編碼是疊加的內容10, 1的位置為001, 10為001+0=0010, 以此類推!

在實際應用中, 使用的是lz77, lz78之類的演算法。使用的是即時編碼的方式,一邊編碼一邊加入字典。

關於Lempel Ziv壓縮演算法的筆記

關於lempel ziv壓縮演算法的筆記 lempel ziv,簡稱lz,擁有lz77,lz78,lzw幾種不同的演變演算法!lz是一種典型的字典型壓縮演算法,巧妙的利用字典,減少資訊量。例子 原始編碼為 1001011011010101011 現在有空字典乙個,首先由第一的bit開始,索引1對應1...

FOR壓縮演算法

倒排表的壓縮演算法 for rbm 詞項索引的檢索原理 fst 如上圖,假設倒排表中最理想的一行id為1,2,3.100 w個連續數字 圖 若沒有使用for壓縮演算法,則有100w個int型別的數字,1數字 4位元組,則有400w位元組,約佔4m儲存空間。1位元組 8bit,則1int需要32bit...

整數壓縮演算法

1 0 255的整數可以只用乙個位元組表示,256 65535的資料只需2個位元組,65536 16777215需要3個位元組,16777216以上4個位元組 int uncompressed byte compressed encode integers int outpos 0,previous...