O(1)时间检测2的幂次
用 O(1) 时间检测整数 n 是否是 2 的幂次。
样例
n=4
,返回 true
;
n=5
,返回 false
.
二进制的n中只有最左边为1其他都是0,只有一个1.
1 class Solution { 2 public: 3 /* 4 * @param n: An integer 5 * @return: True or false 6 */ 7 bool checkPowerOf2(int n) { 8 // write your code here 9 return n > 0 && ((n & (n - 1)) == 0); 10 } 11 };