class Solution {
public boolean isPowerOfTwo(int n) {
// int i=0;
// while(true){
// int x=(int)Math.pow(2,i);
// if(n==x)
// break;
// if(n<x)
// return false;
// ++i;
// }
// return true;
return n>0 && (n&(n-1))==0;
}
}
位运算 2的幂在二进制表示中,只有一个位为1,其余都是0。