暴力做就算了,一位一位和前面比较,不要耍小聪明一次跳两位
class Solution {
public:
bool hasAlternatingBits(int n) {
//移位运算符就行了,每次移动两位
//移动两位不行,比如0110,那么01不同,10也不同,但是11是相同的,还是得一位一位来
int pre = n & 1;
n >>= 1;
while(n != 0){
if((n & 1) == pre) return false;
pre = n & 1;
n >>= 1;
}
return true;
}
};