原题链接:Power of Two
分析:判断一个数是不是2的次方,显然,n<=0不是,那么对于正整数,如果是2的次方,必然只有二进制位只有一个1.所以,代码就很容易了。
题解:
class Solution {
public:
bool isPowerOfTwo(int n) {
/*
Time Complexity:O(1)
*/
if(n<=0)return false;
return n&(n-1)?false:true;
}
};
本文介绍了一种快速判断一个整数是否为2的幂次方的有效方法。通过简单的位运算,可以在常数时间内得出结论。适用于算法面试及编程实践。
292

被折叠的 条评论
为什么被折叠?



