Find Right Interval LeetCode solution in JavaScript
1var findRightInterval = function (intervals) {2const data = intervals3.map((interval, i) => ({ interval, i }))4.sort((a, b) => a.interval[0] - b.interval[0]);56const res = Array(intervals.length).fill(-1);78for (let pos = 0; pos < data.length; pos++) {9let left = pos;10let right = data.length - 1;1112while (left <= right) {13const mid = Math.floor((left + right) / 2);1415if (data[pos].interval[1] <= data[mid].interval[0]) {16right = mid - 1;17} else {18left = mid + 1;19}20}2122if (left < data.length) {23res[data[pos].i] = data[left].i;24}25}2627return res;28};