231. 2 的幂
题目:
算法思想:
通过观察可得知,2的n次幂的二进制形式都是
1.数值大于0
2.二进制最高位只有一个1,其他位都是0
所以用&位运算
代码:
class Solution {int count = 0;public boolean isPowerOfTwo(int n) {if(n<=0) {return false;}for (int i = 0; i < 32; i++) {count += n & 1; //位运算,只要n的二进制末位与......000001进行位与运算。n = n>>1;if (count > 1) {return false;}}return true;}
}
更多推荐
231. 2 的幂
发布评论