Hamming Distance
Description
The Hamming distance between two integers is the number of positions at which the corresponding bits are different.
Given two integers x
and y
, calculate the Hamming distance.
Note:
0 ≤ x
, y
< 231.
Example:
Input: x = 1, y = 4Output: 2
Explanation: 1 (0 0 0 1) 4 (0 1 0 0) ↑ ↑
The above arrows point to positions where the corresponding bits are different.
Solution(javascript)
/**
* @param {number} x
* @param {number} y
* @return {number}
*/
const hammingDistance = function (x, y) {
const strX = x.toString(2).split('').reverse()
const strY = y.toString(2).split('').reverse()
let ans = 0
for (let i = 0; i < Math.max(strX.length, strY.length); i++) {
if ((strX[i] || '0') !== (strY[i] || '0')) {
ans += 1
}
}
return ans
}