Build README

This commit is contained in:
Angelos Chalaris
2017-12-13 14:24:57 +02:00
parent 13bd3be5f7
commit caa0137cfc
2 changed files with 16 additions and 3 deletions

View File

@ -35,6 +35,7 @@
* [Get native type of value](#get-native-type-of-value)
* [Get scroll position](#get-scroll-position)
* [Greatest common divisor (GCD)](#greatest-common-divisor-gcd)
* [Hamming distance](#hamming-distance)
* [Head of list](#head-of-list)
* [Initial of list](#initial-of-list)
* [Initialize array with range](#initialize-array-with-range)
@ -347,6 +348,17 @@ const gcd = (x , y) => !y ? x : gcd(y, x % y);
// gcd (8, 36) -> 4
```
### Hamming distance
Use XOR operator (`^`) to find the bit difference between the two numbers, convert to 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;
// hammingDistance(2,3) -> 1
```
### Head of list
Return `arr[0]`.

View File

@ -1,9 +1,10 @@
### Hamming distance between two numbers
### Hamming distance
Use XOR operator (`^`) to find the bit difference between the two numbers, convert to 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) =>
const hammingDistance = (num1, num2) =>
((num1^num2).toString(2).match(/1/g) || '').length;
//hammingDistance(2,3) -> 1
// hammingDistance(2,3) -> 1
```