Skip to content

Files

Latest commit

 

History

History
31 lines (26 loc) · 816 Bytes

0057. Insert Interval.md

File metadata and controls

31 lines (26 loc) · 816 Bytes

Screen Shot 2022-10-09 at 11 58 44 PM

/**
 * @param {number[][]} intervals
 * @param {number[]} newInterval
 * @return {number[][]}
 */
var insert = function(intervals, newInterval) {
    intervals.push(newInterval);
    intervals.sort((a, b) => a[0] - b[0]);
    let start = intervals[0][0];
    let end = intervals[0][1];
    let res = [];
    
    for(let i = 1; i < intervals.length; i++) {
        if(end >= intervals[i][0]) {
            end = Math.max(end, intervals[i][1]);
        } else {
            res.push([start, end]);
            start = intervals[i][0];
            end = intervals[i][1];
        }
    }
    res.push([start, end]);
    return res;
};