(231)-(Power of Two)-(判断一个整数他是不是2的多少次方)-(一直除以2就好了,注意1和0这种特殊情况)

(231)-(Power of Two)-(判断一个整数他是不是2的多少次方)-(一直除以2就好了,注意1和0这种特殊情况)


//Given an integer,
//write a function to determine if it is a power of two

public class Solution
 {
    public boolean isPowerOfTwo(int n) 
    {
        if(n==0)
        {
            return false;
        }
        if(n==1)
        {
            return true;
        }
        
        int curr_n=n;
        
        boolean bflag=true; //先默认是2的次方
        while(curr_n%2==0 && curr_n!=2)
        {    
            curr_n=curr_n/2;
        }
        //只有当通过上一个循环得到的结果是2的时,才是true,
        //否则,都是false
        if(curr_n!=2)
        {
            bflag=false;
        }
        return bflag; 
    }
}

 

posted @ 2015-07-25 19:33  爱吃萝卜干  阅读(123)  评论(0编辑  收藏  举报