1, Название Описание:
Принимая во внимание целого числа, написать функцию , чтобы определить , является ли это степень двойки.
Пример 1:
Входной сигнал: 1
Выход: истинное
объяснение: 1 = 20
Пример 2:
Ввод: 16
Вывод: истинное
объяснение: 24 = 16
Пример 3:
Входной сигнал: 218
Выход: ложные
Пример 1:
Входной сигнал: 1
Выход: истинное
объяснение: 1 = 20
Пример 2:
Ввод: 16
Вывод: истинное
объяснение: 24 = 16
Пример 3:
Входной сигнал: 218
Выход: ложные
2, думая:
Потому что сила слова двоичного числа только одна сторона 2 1, вы можете сделать цифры по-прежнему права. После удаления первого, в это время, если число равно 0, истинный, иначе ложь
3, код:
Просмотр кода
класс Решение { общественного логический isPowerOfTwo ( INT п) { если (п <= 0 ) возвращают ложь ; в то время как (п - ((п >>> 1) << 1) = 1! ) { п = п >>> 1 ; } Если ((п >>> 1)! = 0 ) возвращает ложь ; еще вернуться верно ; } }
4, в центре внимания исследования: разрядные вычисления
5, справочные материалы: Нет
6, справочные ссылки: Нет
7, название ссылка: https: //leetcode-cn.com/problems/power-of-two/