Given an integer, write a function to determine if it is a power of two.
public class Solution {
public boolean isPowerOfTwo(int n) {
int sum = 0;
if(n <= 0){
return false;
}
for(int i = 0;i < 32;i++){
sum += (n>>>i)&1;
}
return (sum == 1? true:false);
}
}
比较简单,就是移位判断一下二进制数一共有多少个1,如果只有一个,那就是2的幂次方啦。