Find the Distance Value Between Two Arrays LeetCode solution in JavaScript

1
/**
2
* @param {number[]} arr1
3
* @param {number[]} arr2
4
* @param {number} d
5
* @return {number}
6
*/
7
var findTheDistanceValue = function (arr1, arr2, d) {
8
const arr2Sorted = arr2.sort((a, b) => a - b);
9
let dist = 0;
10

11
for (const num of arr1) {
12
if (isDistanceValid(num, d, arr2Sorted)) {
13
dist += 1;
14
}
15
}
16

17
return dist;
18
};
19

20
function isDistanceValid(number, dist, array) {
21
let left = 0;
22
let right = array.length - 1;
23

24
while (left <= right) {
25
const mid = Math.floor((right + left) / 2);
26

27
if (Math.abs(number - array[mid]) <= dist) {
28
return false;
29
}
30

31
if (array[mid] < number) {
32
left = mid + 1;
33
}
34

35
if (array[mid] > number) {
36
right = mid - 1;
37
}
38
}
39

40
return true;
41
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0