同じページに表示するために、sizeof(int)= 4およびsizeof(long)=8と仮定します。
整数の配列が与えられた場合、配列を論理的に左または右にビットシフトするための効率的な方法は何でしょうか?
私は、要素の最初のペア(インデックス0と1)のビットシフトを計算し、最初の要素(0)を設定するlongなどの補助変数を検討しています。このように続けると、要素(インデックス1と2)のビットシフトがコンピューターになり、次にインデックス1が設定されます。
これは実際にはかなり効率的な方法だと思いますが、欠点があります。32ビットを超えるビットシフトはできません。複数の補助変数を使用することは機能すると思いますが、私はどこかで再帰を想定しています。