美文网首页
2019-02-08 Day 34

2019-02-08 Day 34

作者: 骚得过火 | 来源:发表于2019-02-08 20:34 被阅读0次
    1. 交替位二进制
      给定一个正整数,检查他是否为交替位二进制数:换句话说,就是他的二进制数相邻的两个位数永不相等。

    示例 1:

    输入: 5
    输出: True
    解释:
    5的二进制数是: 101
    示例 2:

    输入: 7
    输出: False
    解释:
    7的二进制数是: 111
    示例 3:

    输入: 11
    输出: False
    解释:
    11的二进制数是: 1011
    示例 4:

    输入: 10
    输出: True
    解释:
    10的二进制数是: 1010

    class Solution {
    public:
        bool hasAlternatingBits(int n) {
            
            int temp = n ;
            int last_bit;
            while(temp)
            {
                last_bit = temp & 1;
                temp >>= 1;
                if( (temp & 1) ^ last_bit == 0)
                    return false;
            }
            return true;
            
        }
    };
    

    相关文章

      网友评论

          本文标题:2019-02-08 Day 34

          本文链接:https://www.haomeiwen.com/subject/peposqtx.html