LeetCode【231. 2的幂】

这道题关键在于非正数都是false,就是不断除以2,如果有余数就是false

class Solution {
    public boolean isPowerOfTwo(int n) {
        int i,j;
        int m;
        int flag = 0;
        if(n == 1)
        {
            return true;
        }
        else if(n <= 0)
        {
            return false;
        }
        else
        {
            while(n > 1)
            {
                if(n % 2 != 0)
                {
                    flag++;
                }
                n = n / 2;
            }
            if(flag == 0)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    }
}

 

posted on 2019-06-26 10:12  imimtks  阅读(110)  评论(0编辑  收藏  举报