位元組對編碼

位元組對編碼 是一種簡單的資料壓縮形式,這種方法用資料中不存的一個位元組表示最常出現的連續位元組資料。這樣的替換需要重建全部原始資料。

位元組對編碼實例

假設我們要編碼如下資料

aaabdaaabac

位元組對「aa」出現次數最多,所以我們用資料中沒有出現的位元組「Z」替換「aa」得到替換表

Z <- aa

資料轉變為

ZabdZabac

在這個資料中,位元組對「Za」出現的次數最多,我們用另外一個位元組「Y」來替換它(這種情況下由於所有的「Z」都將被替換,所以也可以用「Z」來替換「Za」),得到替換表以及資料

Z <- aa
Y <- Za
YbdYbac

我們再次替換最常出現的位元組對得到:

Z <- aa
Y <- Za
X <- Yb
XdXac

由於不再有重複出現的位元組對,所以這個資料不能再被進一步壓縮。

解壓的時候,就是按照相反的順序執行替換過程。