无重叠区间
Question
给定一个区间的集合 intervals
,其中intervals[i] = [starti, endi]
。返回 需要移除区间的最小数量,使剩余区间互不重叠 。
思路
和上一题不同的是这一题是按照x_end
从小到大排序
js
var eraseOverlapIntervals = function(intervals) {
intervals = intervals.sort((a,b)=> a[1]<b[1]?-1:1)// x_end 从小到大排序
console.log(intervals)
let res = 0
for(let i=0;i<intervals.length-1;i++){
if(intervals[i+1][0] < intervals[i][1]){ //重叠:下一个气球的左边界 < 当前右边界
res++
intervals[i+1][1] = intervals[i][1]
}
}
return res
};