簡単なアルゴリズムでエンコードして176ビットから80ビットを圧縮し、80ビットから176ビットに再度デコードする必要がありますか?あなたはそれを自分で実装したい場合はここで176ビットから80ビットをエンコードしてデコードするアルゴリズム
答えて
はむしろ単純なアルゴリズムの説明である:あなたがより多くをグーグル場合
http://en.wikipedia.org/wiki/LZ77_and_LZ78
、ページは、それが実際にどのように機能するか非常に詳細な説明をがありました、私はちょうど今それを見つけることができません。
または、圧縮ライブラリを使用してください(例:zlib
(http://en.wikipedia.org/wiki/Zlib))。
これはできません。
176ビット数は、2^176種類の組み合わせがあります。これらの組み合わせのそれぞれを2^80の組み合わせしかない別の80ビット数として表現することはできません。これは、4桁の数字を3桁の数字に圧縮して元に戻すように求めるのと同じです。
どのような種類のデータを扱っているかによって、これは損失を伴う可能性があります。あなたがしていることを説明するために気をつけますか?
pigeonhole principleのため、できません。
176ビットで表現できる9.5 * 10^52の異なる値がありますが、80ビットで表現できる1.2 * 10^24の異なる値しかありません。すべての176ビット値を80ビット値にマップすることはできません。
これが可能であれば、反復圧縮によって無限の量のデータを80ビットに収めることができます。
言われていることは、あなたが176ビットの値について知っていることがあれば、それを行う方法があるかもしれないということです。大きな値が22桁しかないことを知っているとします。 「11223344556677889900」や「1111111111111111111111」のような文字列です。この場合、可能な入力セットは大幅に減少し、これらの値のそれぞれを80ビットの値にマップできます。
+1のピジョンホール原理:-) – Yahia
-1これは誤解を招くためです。行内の176個のゼロは、ランレングス符号化で非常に簡単に9ビットまで圧縮できます。 (最初のビットを0にし、次に8ビットを176回繰り返す)。私は*総ランダム*コードが176ビットを必要とすることに同意する。 –
編集のためにdownvoteを削除しました。 –
- 1. GLESエンコード/デコード32ビット浮動小数点数2x16ビット
- 2. CGFloat on 32-対64ビットのエンコード/デコード
- 3. 32ビット浮動小数点数をIEEE 80ビットに変換
- 4. phpのエンコードとデコードのアルゴリズム
- 5. バイナリへのバイト/ビットのデコード
- 6. PCM 16ビット波からノイズをフィルタリングする最適なアルゴリズムは?
- 7. ビット拡張/複製のアルゴリズムですか?
- 8. ソフトウェアを32ビットから64ビットにコンパイル
- 9. ffmpeg FLAC 24ビット96khzから16ビット48khz
- 10. 8ビットから16ビットへの変換
- 11. Cで80ビットのデータ型を操作する
- 12. 出力する前に、7ビットと8ビットのエンコードされたメッセージをデコードする必要がありますか?
- 13. 32ビットcmd.exeから64ビットPowerShellを起動するには?
- 14. 2次元のビット配列からビットを抽出する
- 15. Excelのマクロを32ビットから64ビットに変換する
- 16. Ubuntuで64ビットのビットであるビット
- 17. WindowsXP 32ビットからWindows 7 64ビットに移動するExcelプラグインエラー
- 18. ビジュアルスタジオで64ビットの倍精度をバイト配列形式の80ビット倍精度に変換する
- 19. 64ビットのターゲットアプリケーションから32ビットのlibファイルを呼び出す
- 20. 32ビットOutlookアドインを64ビットとして再構築する
- 21. 64ビット整数のすべてのビットと32ビット整数を比較する
- 22. PDOで64ビットから32ビットに変換される整数
- 23. イメージをBase64からエンコードしてデコードする
- 24. WMIとWin32_Process - 32ビットか64ビットかを判断しますか?
- 25. 2ビットの10ビットを修正する
- 26. ポインタからビットを盗む
- 27. 符号が11ビットから32ビットに拡張されます
- 28. 32ビットから64ビットにテストを移行
- 29. 32ビットのJavaから64ビットのWindowsコマンドを実行
- 30. Google Web Toolkitから64ビットまたは32ビットWindowsを検出
あなたの問題と達成しようとしている目標についてより詳細な情報を提供してください。圧縮?オーディオエンコーディング? – hochl
本当にあなたは176ビットのデータを80ビットに圧縮する方法を求めていますか?それとも、この質問には何か? – Eclipse
の目標は、それを圧縮して解凍するだけの問題です。 – kartal