ハフマン符号化は、文字コードを、「たくさんある文字に短いビット長のコードを割り当てる可変長のコード」にして、文字列を一列に並べれば、文字列全体の長さが短くなる場合があると言うことらしいです。(詳しいことはよく分かりません。)文字毎に割り当てる最適なビット長を決めるのが「きも」らしいですが、そのアルゴリズムがわかりません^^;