342. Power of Four

    /*
     * 342. Power of Four 
     * 2016-7-10 by Mingyang
     * 还是先来最基本的做法,但是因为题目更高的follow up是说,不要用loop
     */
    public boolean isPowerOfFour(int num) {
        if (num < 1) {
            return false;
        }
        while (num % 4 == 0) {
            num /= 4;
        }
        return num == 1;
    }
    //然后自己写了Bit的算法,就是100,10000后面0的个数是偶数就ok
    public static boolean isPowerOfFour1(int num) {
        if (num < 1) {
            return false;
        }
        int count = 0;
        while (num > 1) {
            if ((num & 1) == 0) {
                num = num >> 1;
                count++;
            } else {
                return false;
            }
        }
        return count % 2 == 0;
    }
原文地址:https://www.cnblogs.com/zmyvszk/p/5662313.html