Files
30-seconds-of-code/snippets/hammingDistance.md

18 lines
459 B
Markdown

---
title: hammingDistance
tags: math,regexp,intermediate
---
Calculates the Hamming distance between two values.
Use the XOR operator (`^`) to find the bit difference between the two numbers, convert to a binary string using `toString(2)`.
Count and return the number of `1`s in the string, using `match(/1/g)`.
```js
const hammingDistance = (num1, num2) => ((num1 ^ num2).toString(2).match(/1/g) || '').length;
```
```js
hammingDistance(2, 3); // 1
```