-3

C++ を使用して、CPU でハフマン圧縮/解凍アルゴリズムをコーディングしています。ハフマン ツリーを構築したことを考えると、コードの時間を計測すると、100 万個の浮動小数点数を解凍するのに 24 秒かかります。私のハードウェアは次のとおりです。

Intel Core i5、6 GB RAM、64 ビット OS、5.5 Windows エクスペリエンス インデックス、2.3 GHz クロック速度のラップトップ。

圧縮の経験がある人は、上記の値が正しいか、それともコードが遅すぎるかを教えてもらえますか?

4

1 に答える 1

2

コードが遅すぎます。8バイトのfloatと1の圧縮率を想定したとしても、それは非常に控えめに、デコードされた入力ビットあたりほぼ1000サイクルです。ビットごとであっても、バイナリツリーをトラバースするには、ビットごとに数命令しかかかりません。そして、ビットごとよりもはるかに高速な方法があります。

于 2012-12-31T21:35:20.157 に答える