342. Power of Four

做到第三个power of XXX的题的时候觉得不对了……再蠢也不会出3个一样,仔细看了下别人的方法。。

2 10
4 100
8 1000

power of 2.... n & (n-1) == 0

4的话也差不多,首先得都是2的power,然后4是隔1位有1个。。所以2 4 6 8这种位是不能有的。。

2 4 8 这些位是 0x55555555

怪不得都说E M刷完就可以去面试了。。

感觉E是基础运算的工具,M是整合数据结构来建模,HARD难度就不封顶了。。什么乱七八糟的都有

public class Solution {
    public boolean isPowerOfFour(int num) {
        return num > 0 && ((num - 1) & num) == 0 && (0x55555555 & num) != 0;
    }
}
posted @ 2016-10-21 11:59  哇呀呀..生气啦~  阅读(81)  评论(0)    收藏  举报