题目大意:不用循环和递归,确定一个有符号整形是否是4的幂。
分析:用位运算来算。
AC code:
class Solution {
public:
bool isPowerOfFour(int num) {
return ((num & (num - 1)) == 0) && (1431655765 == (num | 1431655765)) && num;
}
};
题目大意:不用循环和递归,确定一个有符号整形是否是4的幂。
分析:用位运算来算。
AC code:
class Solution {
public:
bool isPowerOfFour(int num) {
return ((num & (num - 1)) == 0) && (1431655765 == (num | 1431655765)) && num;
}
};