本文主要是介绍Leetcode : 342. 4的幂,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
342. 4的幂
给定一个整数 (32 位有符号整数),请编写一个函数来判断它是否是 4 的幂次方。
示例 1:
输入: 16
输出: true
示例 2:
输入: 5
输出: false
位运算, 先判断是否为2的幂,然后在判断在二进制的情况下,1在偶数位,还是在奇数位,从0开始,然后与0xaaaaaaaa相乘,因为0xaaaaaaaa是1010,所以&后是0,
class Solution {
public:bool isPowerOfFour(int num) {if(num<=0)return false;if((num&(-num))!=num)return false;if((num&0xaaaaaaaa)==0)return true;return false;}
};
这篇关于Leetcode : 342. 4的幂的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!