leetcode 1288. 删除被覆盖区间
问题描述: 给你一个区间列表,请你删除列表中被其他区间所覆盖的区间。
只有当 c <= a 且 b <= d 时,我们才认为区间 [a,b) 被区间 [c,d) 覆盖。
在完成所有删除操作后,请你返回列表中剩余区间的数目。
示例:
输入: intervals = [[1,4],[3,6],[2,8]]
输出: 2
解释: 区间 [3,6] 被区间 [2,8] 覆盖,所以它被删除了。
/**
* @param {number[][]} intervals
* @return {number}
*/
var removeCoveredIntervals = function(intervals) {
let arr=intervals.sort((a,b)=>{
if(a[0]!==b[0])return a[0]-b[0];
else{
return b[1]-a[1]
}
})
let max=arr[0][1],ret=0;
for(let i=1;i<arr.length;i++){
if(arr[i][1]<=max){
ret++;
}else{
max=arr[i][1]
}
}
return intervals.length-ret
};