ハフマン符号化というのは情報圧縮方法のひとつです。たとえばテキスト(文章)のファイルは普通、固定長の文字コードで記録されています。それが1文字1バイトなら100文字で100バイトとなりますね。これをもっと少ないバイト数で記録して、しかも元通りに再現できる方法を可逆圧縮といいます。
David A. Huffman(1925-1999)が考えたのは、文字コードのビット数を可変にすることでした。そして、出現率の高い文字には少ないビット、滅多に出ない文字には長いビット数を割り当てるというのです。実際の英語ではスペースやeはとてもよく出てきますが、qやxはあまり出てきません。このようにしてうまく符号化すると全体として記録量が少なくなるというわけです。
ところで、文字によってビット数が違うと、区切りがわからなくなりそうですよね。でもハフマン符号化では、実に巧妙な方法でそれも分かるようになっています。
身近なところで、みなさんもファイル圧縮のLHAをご存知でしょう。あの基本原理もハフマンの符号化なのです。 --- Y.O. ---