Back to all solutions
#693 - Binary Number with Alternating Bits
Problem Description
Given a positive integer, check whether it has alternating bits: namely, if two adjacent bits will always have different values.
Solution
/**
* @param {number} n
* @return {boolean}
*/
var hasAlternatingBits = function(n) {
for (let i = 1, b = n.toString(2); i < b.length; i++) {
if (b[i - 1] === b[i]) return false;
}
return true;
};