题目
1 | class Solution { |
考虑:
num > 0
时,才会是一个数的幂。负数和0不会是一个正整数的幂。!(num&(num-1))
时,用来判断num
是不是2的幂,- 因为一个数是2的幂的话,则它2进制的第一位必然是1,与
num-1
与运算后,结果必然为0
- 因为一个数是2的幂的话,则它2进制的第一位必然是1,与
Reference
https://leetcode-cn.com/problems/power-of-four/solution/e-you-shi-yi-dao-zhuang-bi-jie-fa-de-suan-fa-ti-2/
https://www.geeksforgeeks.org/program-to-find-whether-a-no-is-power-of-two/