231. Power of Two
Содержание
Условие задачи
Given an integer, write a function to determine if it is a power of two.
Дано целое число, необходимо написать функцию, которая проверяет – является ли число степенью двойки.
пример 1
Input: 1
Output: true
Explanation: 2^0 = 1пример 2
Input: 16
Output: true
Explanation: 2^4 = 16пример 3
Input: 218
Output: falseРешение
Рекурсивная проверка
func isPowerOfTwo(n int) bool {
if n<=0 {
return false
}
if n == 1 {
return true
}
if n%2 == 1{
return false
}
return isPowerOfTwo(n>>1)
}Цикл
func isPowerOfTwo(n int) bool {
if n<=0 {
return false
}
for ;n >1;n=n>>1 {
if n%2 == 1 {
return false
}
}
return true
}