2017-02-13 3 views
-1

0から3の範囲の8つの数値の配列が与えられている場合、それを2バイト未満に圧縮することは可能ですか?8個の数値(0-3)を2バイト未満に圧縮することはできますか?

すなわち:

のint []配列= {3,2,0,0,1,0,2,2}

一緒に3,2,0,0及び1,0を組み合わせることにより、2,2一緒に私はバイト11100000(224)と01001010(74)を作成することができますが、おそらくエンコーディングを介してこれを2バイト以下に減らすための他の方法があれば私は興味がありますか?あなたはそれらのすべてを符号化する2つのバイトを持っている必要があるので、4つの選択肢と

+0

いくつかのサンプルを追加するか、または入力と出力について詳細を入力するといいでしょう。 –

+2

数値と8つの数値に4つの値があります。これは、4^8または2^16の異なる組み合わせを意味します。数字に他の制約がないとすれば、16ビットまたは2バイトが必要であることが示唆されます。 –

+1

0-3の数値は2バイナリビットを格納するので、そのうち8つは16ビット(つまり2バイト)です – DavidG

答えて

1

8の数字は、それぞれ、4 = 2 (8⋅2)異なる組み合わせを可能にします。

ご入力の内容によっては、典型的な入力が2つ未満のバイトにエンコードされますecodingを見つけることが可能かもしれません。しかし、あなたは非定型入力のために2バイト以上必要とすることでこれを支払う。

関連する問題