2023-8-28
8-28
数组
题号 57. 插入区间
题目 给你一个 无重叠的 ,按照区间起始端点排序的区间列表。
在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。
function insert(intervals: number[][], newInterval: number[]): number[][] {
const res = []
let i = 0
const len = intervals.length
while(i<len && intervals[i][1]<newInterval[0]){
res.push(intervals[i])
i++
}
while(i<len && intervals[i][0]<=newInterval[1]){
newInterval[0] = Math.min(newInterval[0],intervals[i][0])
newInterval[1] = Math.max(newInterval[1],intervals[i][1])
i++
}
res.push(newInterval)
while(i<len){
res.push(intervals[i])
i++
}
return res
};