1

16 進文字でファイルを圧縮しようとしていますが、RLE はファイルと文字に依存するため、ハフマン コード化を使用するのが効率的かどうかわかりません。これは、ファイルを変更しても決して同じではありません。圧縮します。

ハフマンを使うべきですか?効率が悪いとすれば、それはなぜですか?それをよりよく圧縮するために使用できる既知のアルゴリズムはありますか?任意の言語でコードとして記述できますか?

4

2 に答える 2

2

まず、16 進数の 2 文字ごとに 1 バイトに変換する必要があります。これにより、すぐに係数が 2 倍になります。

次に、結果のバイトに冗長性がある場合に応じて、RLE (または RLE の一般化であるより適切な LZ77 一致文字列) とハフマンの両方を適用できます。zlib などの既存の圧縮方法は、両方を適用してこれを行います。

于 2015-01-14T20:50:46.330 に答える