Есть ли какие-либо эффективные побитовые операции, которые я могу сделать, чтобы получить количество битов набора, с которыми заканчивается целое число? Например, 11 10= 1011 2 будут двумя конечными 1 битами. 8 10= 1000 2 будет 0 завершать 1 бит.
Есть ли лучший алгоритм для этого, чем линейный поиск? Я реализую рандомизированный список пропусков и используя случайные числа для определения максимального уровня элемента при его вставке. Я имею дело с 32-битными целыми числами в С++.
Изменить: невозможно установить ассемблер, меня интересует чистое решение на С++.