1 統計編碼,主要包括霍夫曼編碼和算術編碼,用途廣泛
2 字典編碼,主要包括lz77,lz78,lzw等,zip,rar等壓縮軟件基本用這類算法
3 變換編碼,主要包含傅裏葉變換、離散余弦變換(DCT)、小波變換等,圖像、視頻領域使用
4 預測編碼,ADPCM等,語音、圖像、視頻領域使用
妳問的壓縮程序應該指的是字典編碼,這種壓縮編碼就是掃描待壓縮數據,每次都到前面去找,當前的字符串是否在前面出現過,如果出現過就用壹個距離和長度來代替這個字符串,例如:
外星人遇到另壹個外星人
那麽最後這個 "外星人" 就保存為 (-8, 3),表示 "外星人"這個字符串在前面出現過,位置是前面的第8個字符,長度為3。
這種算法就是以色列人1977年提出的算法,實際上現在的壓縮軟件都是從這種算法改進來的,無論他怎樣改,就沒有脫離這個思路。
當然,目前實際上已經有了更好的算法,但是都無法推廣,因為這些更好的算法都有專利。