13贪心:无重叠区间

13贪心:无重叠区间

435. 无重叠区间

和12贪心:用最少数量的箭引爆气球非常像,稍微一改便可AC

class Solution {
    public int eraseOverlapIntervals(int[][] intervals) {
        //每次重合去掉最长的区间 去除最少
        if(intervals.length == 1 || intervals.length == 0) return 0;
        //排序 
        Arrays.sort(intervals, (a, b) -> Integer.compare(a[0], b[0]));
        //去除 判断重合否
        int res = 0;
        for(int i = 1; i < intervals.length; i++) {
            if(intervals[i][0] < intervals[i - 1][1]) {//重合
                res++;
                intervals[i][1] = Math.min(intervals[i][1], intervals[i - 1][1]);//去除区间长的
            }
        }
        return res;
    }
}

你可能感兴趣的:(算法刷题笔记,贪心算法)