ハフマンのエンコーディングに問題がありますが、その解決方法やハフマンの逆のエンコーディングであるかどうかはわかりません。しかし、それは間違いなく貪欲なアプローチを使って解決することができます。逆ハフマンのアルゴリズムですか?
それぞれの確率に関連付けられた長さのセットを考えてみましょう。即ち
X={a1=(100,1/4),a2=(500,1/4),a3=(200,1/2)}
は明らかに、すべての確率の総和= 1
は、出発点から他の後の行いずれかに一緒に長さをアレンジ。
例:{a2,a1,a3}
この順番で最初から最後まで。
要素のコストを、開始線からこの要素の終わりまでの合計の長さに確率で乗じて定義します。前の配置からそう
:
cost(a2) = (500)*(1/4)
cost(a1) = (500+100)*(1/4)
cost(a3) = (500+100+200)*(1/2)
は、すべてのコストの和としてトータルコストを定義します。例えばcost(X) = cost(a2) + cost(a1) + cost(a3)
。 cost(X)
を最小限に抑え配置を見つけるアルゴリズムを与える私はいくつかの代替ハフマン木を形成しようとしましたが、それは動作しません。
確率でソートすると失敗します(X = {(100,0.4)、(300,0.6)}と考える)。
長さによるソートも失敗します(X = {(100,0.1)、(300,0.9)}と考える)。
誰かが最適な解法アルゴリズムを助けることができれば、それは素晴らしいことです。
質問は? –
"コスト(X)を最小化する配置を見つけるアルゴリズムが与えられた" – thestateofmay
私はそれが '与えられていることを理解しています...しかし、何が問題なのですか? –