我的LeetCode代码仓:https://github.com/617076674/LeetCode
原题链接:https://leetcode-cn.com/problems/power-of-four/
题目描述:
知识点:位运算
思路:先将2的幂和4的幂都筛选出来,再筛选出4的幂
(1)先去除小于0的数。
(2)如何筛选出2的幂呢?
对于2的幂,其二进制表示是有规律的,就是其32位二进制表示里只有一个1,如:
00000000 00000000 00000000 00000001
00000000 00000000 00000000 00000010
00000000 00000000 00000000 00000100
00000000 00000000 00000000 00001000
……
因此只需满足(num & (num - 1)) == 0,即可说明这个数是2的幂。
(3)