题目
Number: 231
Difficulty: Easy
Tags: Math, Bit Manipulation
Given an integer, write a function to determine if it is a power of two.
题解
求一个数是否为2的幂。非整数返回false
。
用按位求一个整数中1的个数来求解。一个数是2的幂,这个数的二进制一定只有一个1.
代码
bool isPowerOfTwo(int n) {
if(n <= 0)
return false;
n &= n - 1;
return !n;
}