先上题目
思路:
1.将输入数转换为二进制(此处采用循环%2)
2.得到的每一位数与下一位数next_number相比,相同直接返回false;不同则result=true;循环结束后返回result
代码部分
bool hasAlternatingBits(int n) {
int number,next_number;
bool result=false;
while(n){
number=n%2;
n/=2;
next_number=n%2;
if(number==next_number)return false;
else if(number!=next_number)result=true;
}
return result;
}