霍夫曼編碼碼字:
l)將訊號源的符號按照出現機率遞減的順序排列。
2)將兩個最小出現機率進行合併相加,得到的結果作為新符號的出現機率。
3)重複進行步驟1和2直到機率相加的結果等於1為止。
4)在合併運算時,機率大的符號用編碼0表示,機率小的符號用編碼1表示。
5)記錄下機率為1處到當前訊號源符號之間的0,l序列,從而得到每個符號的編碼。
例:
設訊號源為 s={s1, s2, s3, s4, s5}
對應的機率為p={0。25,0。22,0。20, 0。18,0。15}。
根據字元出現的機率來構造平均長度最短的異字頭碼字。