版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_28163175/article/details/89496568
解题思路:循环将这个数除以2,取商再除以2,每次取商后除以2判断余数是否为0,如果不为0,肯定不是2的整数次幂,直接退出,如果为0,继续循环,当这个数等于1时,退出循环说明是2的整数次幂
代码如下
public static boolean ispow(int i){
if(i<=1){
return false;
}
do{
if(i%2!=0){
return false;
}
i=i/2;
}while(i!=1);
return true;
}