從我的算法教材:壓縮實例
年縣賽馬帶來三個純種從來沒有誰對彼此競爭。興奮的是,你研究了他們過去的200場比賽,並將這些比賽概括爲四個結果的概率分佈:第一個(「第一名」),第二名,第三名和其他。
Outcome Aurora Whirlwind Phantasm
first 0.15 0.30 0.20
second 0.10 0.05 0.30
third 0.70 0.25 0.30
other 0.05 0.40 0.20
哪匹馬是最可預測的?對這個問題的一種量化方法是考慮可壓縮性。將每匹馬的歷史記錄爲一串200個值(第一,第二,第三,其他)。然後可以使用霍夫曼算法計算編碼這些記錄字符串所需的位總數。這對於Aurora來說是290比特,對於旋風來說是380比特,對於Phantasm來說則是420(檢查它!)。 Aurora具有最短的編碼,因此在最強烈的意義上是最可預測的。
他們是如何得到Phantasm 420的?我一直得到400字節,因爲如此:
先結合,其他= 0.4,結合第二,第三= 0.6。最終以2位編碼每個位置。
有沒有我誤解霍夫曼編碼算法的東西?
教科書可在這裏:http://www.cs.berkeley.edu/~vazirani/algorithms.html(第156頁)。
「哪匹馬最可預測?」 - 這實際上並沒有回答這個問題,因爲這場比賽取決於比賽中的其他馬匹。 Aurora可能每次都在同一時間完成課程 - 下降到毫秒! - 由於比賽中的其他馬匹,仍然可以看到顯示的結果。 – 2010-06-11 12:06:16