0

さて、私は与えられたツリーが圧縮ファイルに一致するかどうかを決定する関数を実装しようとしています、まあ「試行」は少し「不実表示」です私はそのような機能を実装する方法を知りません。圧縮ファイルのバイトが他のファイルのツリーと一致することがあるので、私には理解できません。どんなアイデアでも大歓迎です。

4

1 に答える 1

1

あなたが何を求めているのかわかりません。

ハフマン圧縮について読むことをお勧めします-おそらくウィキペディア:ハフマンコーディングとそれがリンクしているいくつかのページ。次に、質問を編集して、理解しようとしていることを説明します。実際の疑問符を使用できますか?

ハフマン圧縮アルゴリズムは通常、ツリーの再構築に必要なすべての情報を含む「ヘッダー」と、圧縮されたビットストリームを含む「本体」を含む圧縮ファイルを生成します。

ある圧縮ファイルの「ヘッダー」を他の圧縮ファイルの「本体」とつなぎ合わせると、デコンプレッサは何かが間違っていることを認識できません。デコンプレッサは「解凍された」ジブリッシュを喜んで生成します。

考えられるすべてのビットシーケンスは、考えられるすべてのハフマンツリーによって「デコード」できます。ただし、一部の圧縮ビットストリームの正しい元のファイルは、1つの正しいハフマンツリーによってのみ生成できます。

「body」圧縮ビットストリームと「header」(またはそのヘッダーから再構築された完全なハフマンツリー)だけを考えると、それらが単一の実際の圧縮ファイルからの実際の本体と実際のヘッダーであるかどうかを判断することは通常不可能です。または、一方が1つの圧縮ファイルからのもので、もう一方が他の圧縮ファイルからのものであるかどうか。

于 2012-11-22T04:03:00.257 に答える