/
NikolayIvkin
/
TheAlgorithms
Обзор
Документация
Войти
/
NikolayIvkin
/
TheAlgorithms
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/main/java/com/thealgorithms/bitmanipulation/IndexOfRightMostSetBit.java
44 строки
1 KB
Hardik Pawar
Improve comments, function & class documentation in `IndexOfRightMostSetBit.java` (#5579)
07 окт 2024, 15:14
Не верифицирован
07 окт 2024, 15:14
7f57fc9
Код
Авторство
О чём код?
package com.thealgorithms.bitmanipulation; /** * Utility class for bit manipulation operations. * This class provides methods to work with bitwise operations. * Specifically, it includes a method to find the index of the rightmost set bit * in an integer. * This class is not meant to be instantiated. * * Author: Bama Charan Chhandogi (https://github.com/BamaCharanChhandogi) */ public final class IndexOfRightMostSetBit { private IndexOfRightMostSetBit() { } /** * Finds the index of the rightmost set bit in the given integer. * The index is zero-based, meaning the rightmost bit has an index of 0. * * @param n the integer to check for the rightmost set bit * @return the index of the rightmost set bit; -1 if there are no set bits * (i.e., the input integer is 0) */ public static int indexOfRightMostSetBit(int n) { if (n == 0) { return -1; // No set bits } // Handle negative numbers by finding the two's complement if (n < 0) { n = -n; n = n & (~n + 1); // Isolate the rightmost set bit } int index = 0; while ((n & 1) == 0) { n = n >> 1; index++; } return index; } }