計算機, 信息技術
霍夫曼碼:應用實例
目前,很少有人會想到有關的事實,如何做文件壓縮。 與以前使用的個人電腦相比已經變得更加容易。 而幾乎每個人都與文件系統的工作使用的文件。 但很少有人會想到他們如何工作,在什麼基礎上的文件壓縮。 這一過程的第一個版本是霍夫曼碼,他們今天已應用於各種流行的檔案庫。 很多用戶甚至不認為文件壓縮多麼容易發生,它是工作的一個方案。 在這篇文章中,我們看一下如何壓縮什麼細微的差別有助於加快和簡化編碼的過程,以及看什麼樹編碼的原則。
歷史算法
電子信息的編碼效率的第一個算法已經成為一個代碼霍夫曼提出的,早在二十世紀中葉,即1952年。 它是誰,他此刻是多數人創建的壓縮信息程序的基本元素。 目前,使用這種代碼最流行的來源之一是檔案ZIP,ARJ,RAR和其他許多人。
有效編碼原則
Huffman算法的基礎包括一個方案,允許您更換最可信,最經常出現的符號 二進制編碼 系統。 而那些誰是不太常見的,換成較長碼。 去長霍夫曼碼後,方可系統採用全最小值出現。 該技術允許你以最小化原始消息作為一個整體的每個符號的代碼的長度。
霍夫曼編碼,例如
為了說明這個算法,考慮建設代碼樹的圖形變種。 使用這個方法是有效的,有必要澄清所需的處理的概念的某些值的定義。 該組中的多個節點和弧,這是從節點引向節點的,稱為曲線圖。 樹本身是一組特定的性質圖:
- 中的每個節點可以包括不超過一個圓弧以上;
- 其中一個節點必須是樹的根,也就是說,它不應該在所有的弧的一部分;
- 如果桿開始沿弧線運動,這個過程應該允許在任何節點的完全搞定。
構建樹哈夫曼算法
霍夫曼碼的建設是從英文字母的輸入。 產生的是在未來的代碼樹的免費網站的列表。 列表中的每個節點的權重必須是相同的作為對應於該節點的字母帖子的發生的概率。 在這種情況下,誰重的至少一個從未來樹的幾個免費的網站中選擇。 在這種情況下,如果最低工資率在幾個地點觀察到的,你可以自由選擇任意對。
提高壓縮效率
為了提高壓縮效率,它是在樹構建代碼必須使用的字母出現在一個特定的文件的可能性,連接到樹中的所有數據,而不是讓他們分散在大量的文本文檔的事實。 如果預穿行這個文件,你可以立即計算出如何統計往往存在設施受到壓縮的信件。
壓縮過程的加速度
為了加快算法,字母的定義應該不是在一個特定的字母出現的概率,其發生的頻率方面進行。 有了這個算法變得容易,更快地與他們合作。 這也避免了與浮點除法相關的操作。
結論
霍夫曼碼 - 簡單,歷史悠久的算法,它仍然被許多知名項目和企業。 它的簡單和清晰可取得有效的成果壓縮任何體積的文件,並顯著減少磁盤存儲空間。 換句話說,Huffman算法 - 長期以來一直研究並沒有被這一天減少工作圖,它的緊迫性。
Similar articles
Trending Now