大量的子串多次重復出現的壓縮

quguiliang 14年前發布 | 2K 次閱讀

 具體思想:

比如我們大家所熟知的ASCII碼,這個碼表是與我們常見的字符是一一對應的,比如我們說‘a,我們也可以寫成97,這兩者就是等價的。其實上這就是一個碼表。所以人們就想到,我們可不可以用以一個碼表示一個或者多個的字符,比如8表示ab這兩字符,我們就能將abcab這種的字符串縮小為8c8了。 但是我們知道字節只有0~255,如果我們要擴展的話就必須增加自己的定義。既,我假設我用增加了256~65534這么一段表示新的碼表。

 

具體步驟:

①打開一個待壓縮文件與存放壓縮后的文件

②讀入一個字節作為后綴,判斷這個詞字典中是否存在,存在則直接輸出,不存在則加入字典中。

③如果超過了最大的長度則,將當前碼表寫出到文件中,清空,再次讀入

最后,將沒有寫完的信息,和碼表都輸出,壓縮就完成了

 本文由用戶 quguiliang 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!