leetCode刷题记录77_693_Binary Number with Alternating Bits

/*****************************************************问题描述*************************************************
Given a positive integer, check whether it has alternating bits: namely, if two adjacent bits will always have different values.

Example 1:
Input: 5
Output: True
Explanation:
The binary representation of 5 is: 101
Example 2:
Input: 7
Output: False
Explanation:
The binary representation of 7 is: 111.
Example 3:
Input: 11
Output: False
Explanation:
The binary representation of 11 is: 1011.
Example 4:
Input: 10
Output: True
Explanation:
The binary representation of 10 is: 1010.
判断一个数的二进制表示形式是否是0和1交替出现.
/*****************************************************我的解答*************************************************
/**
 * @param {number} n
 * @return {boolean}
 */
var hasAlternatingBits = function(n) {
    var toBits = function(number){
        return number.toString(2);
    }
    for(var index = 0; index < toBits(n).length - 1; index++)
    {
        if(toBits(n).charAt(index) === toBits(n).charAt(index + 1))
        {
            return false;
        }    
    }    
    return true;
};
console.log(hasAlternatingBits(10));

发布了135 篇原创文章 · 获赞 10 · 访问量 6242

猜你喜欢

转载自blog.csdn.net/gunsmoke/article/details/89092984