342.4的幂
原题:
给定一个整数,写一个函数来判断它是否是 4 的幂次方。如果是,返回 true
;否则,返回 false
。
整数 n
是 4 的幂次方需满足:存在整数 x
使得 n == 4x
解题思路:
需计算4的幂,根据题意,我们可以采用将1不断乘4,直到该数字不小于n
源码:
bool isPowerOfFour(int n) {
long long int i=1;//int会发生溢出,改用long long int
for(i=1;i<n;i=i<<2);//这里采用了位运算,能快一点点,也可以将i=i<<2改为i*=4,效果不变
return i==n;//如果相等,则该数是4的幂
}
都看到这里了,点个赞再走吧
可以的话顺便点个关注吧
个人代码仅供参考,如有错漏,望指出