【Leetcode】2的幂(整数的二进制形式,与运算)

class Solution {
public:
    bool isPowerOfTwo(int n) {
        if(n <= 0) return false;
        
        return (n&(n-1)) == 0;
    }
};

注:

1) 2的幂函数,其y值大于0;

2) 2的幂函数,若 x < 0, y = (0,1);

2)n&(n-1) == 0 和 (n&(n-1)) == 0 ,逻辑是不一样的。

猜你喜欢

转载自www.cnblogs.com/gdut-gordon/p/11438416.html