Чтобы оказаться на одной странице, предположим, что sizeof(int)=4 и sizeof(long)=8.
Учитывая массив целых чисел, какой был бы эффективный метод логического битового сдвига массива влево или вправо?
Я рассматриваю вспомогательную переменную, такую как long, которая будет вычислять битовый сдвиг для первой пары элементов (индекс 0 и 1) и устанавливать первый элемент (0). Продолжая в том же духе, битовый сдвиг для элементов (индекс 1 и 2) будет компьютерным, а затем будет установлен индекс 1.
Я думаю, что это на самом деле довольно эффективный метод, но есть недостатки. Я не могу сдвинуть больше 32 бит. Я думаю, что использование нескольких вспомогательных переменных будет работать, но я предполагаю рекурсию где-то вдоль линии.