2011/05/26
判断一个数是不是2的幂
是二的幂的数二进制表现方式:
2^1 = 2 10
2^2 = 4 100
2^3 = 8 1000
.......
所以:
/**
* 判断一个数是不是2的幂
* @param n
* @return true:is power2, else not
*/
public boolean power2(int n){
return n&(n-1) == 0;
}
对于n<0的情况呢?
忘记了。
2011/05/26
是二的幂的数二进制表现方式:
2^1 = 2 10
2^2 = 4 100
2^3 = 8 1000
.......
所以:
/**
* 判断一个数是不是2的幂
* @param n
* @return true:is power2, else not
*/
public boolean power2(int n){
return n&(n-1) == 0;
}
对于n<0的情况呢?
忘记了。