题目链接
英文链接:https://leetcode.com/problems/power-of-four/
中文链接:https://leetcode-cn.com/problems/power-of-four/
题目详述
给定一个整数 (32 位有符号整数),请编写一个函数来判断它是否是 4 的幂次方。
示例 1:
1 | 输入: 16 |
示例 2:
1 | 输入: 5 |
进阶:
你能不使用循环或者递归来完成本题吗?
题目详解
位运算。
4的幂必然是 2的幂,只不过它的 1 只能出现在奇数位置(按从右往左,第一位为奇数位)。
n > 0
。- 二进制位里面只有一个 1。
- 唯一的一个 1 在奇数位上。
根据上面三个关键条件,合理运用位运算进行判断即可,有很多种写法。
1 | public class LeetCode_00342 { |