231 Power of Two
链接:https://leetcode.com/problems/power-of-two/
问题描述:
Given an integer, write a function to determine if it is a power of two.
Credits:
Special thanks to @jianchao.li.fighter for adding this problem and creating all test cases.
Hide Tags Math Bit Manipulation
求一个数字是不是2的幂。如果一个数字是2的幂那么在二进制标识中,一定有且仅有一个1。
class Solution {
public:
bool isPowerOfTwo(int n) {
int sum=0;
if(n<0) return false;
for(int i=0;i<32;i++)
{
sum+=(n&1);
n>>=1;
}
if(sum==1)
return true;
else
return false;
}
};