题目描述:

标签:贪心算法   

给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。

注意:

可以认为区间的终点总是大于它的起点。
区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠

代码:

思路分析:思路同用最少数量的箭引爆气球

1、首先按照右边界从小到大排序

2、每次比较intervals[i][0] < intervals[i-1][1]  

①满足,说明这个区间重叠,需要统计重叠部分的最小右边界,给之后的区间留足够大的空间(体现贪心)

②不满足,说明没有重叠,统计不重叠区间的个数

3、返回总区间个数-不重叠区间个数

class Solution {public int eraseOverlapIntervals(int[][] intervals) {if(intervals.length == 0) return 0;Arrays.sort(intervals,new Comparator<int[]>(){public int compare(int[] interval1,int[] interval2){if(interval1[1] > interval2[1]){return 1;}else if(interval1[1] < interval2[1]){return -1;}else{return 0;}}});int count = 1;for(int i = 1;i < intervals.length;i++){if(intervals[i][0] < intervals[i-1][1]){intervals[i][1] = Math.min(intervals[i][1],intervals[i-1][1]);}else{count++;}}return intervals.length - count;}
}

LeetCode435—无重叠区间(java版)相关推荐

  1. Leetcode-435:无重叠区间

    题目链接 Leetcode-435:无重叠区间 题目描述 给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠. 注意: 可以认为区间的终点总是大于它的起点. 区间 [1,2] 和 [2 ...

  2. leetcode435. 无重叠区间(贪心算法)

    给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠. 注意: 可以认为区间的终点总是大于它的起点. 区间 [1,2] 和 [2,3] 的边界相互"接触",但没有相互 ...

  3. leetcode435. 无重叠区间

    一:论语 道不同 不相为谋 我们没有理由拿着自己的评判标准 去看待别人所经历的事情,重来就没有真正的感同身受,我们能做的就是尊重他人的看法 ,保留自己的态度. 二:题目 三:上码 class Solu ...

  4. 贪心算法无重叠区间c语言,贪心算法之区间问题.md

    --- title: 贪心算法之区间问题 tags: - Leetcode categories: - Leetcode author: 四叶草 top: false abbrlink: 26230 ...

  5. 通俗易懂:贪心算法(二):区间问题 (力扣435无重叠区间)

    看完本文,可以顺便解决leetcode以下题目: 435.无重叠区间(中等) 一.通俗易懂的 贪心算法 |思想 (重复一次~~~) 贪心算法就是采用贪心的策略,保证每一次的操作都是局部最优的,从而使得 ...

  6. 无重叠区间及用最少的箭射爆气球

    无重叠区间及用最少的箭射爆气球 文章目录 无重叠区间及用最少的箭射爆气球 **一:开胃菜** **二.无重叠区间** **三.用最少的箭射爆气球** 一:开胃菜 在开始所无重叠区间前先做一道简单的提来 ...

  7. 435. 无重叠区间

    435. 无重叠区间 给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠. 注意: 可以认为区间的终点总是大于它的起点. 区间 [1,2] 和 [2,3] 的边界相互"接触& ...

  8. 力扣记录:贪心算法3较难(1)区间问题——55 跳跃游戏,45 跳跃游戏II,452 用最少数量的箭引爆气球,435 无重叠区间,763 划分字母区间,56 合并区间

    本次题目 55 跳跃游戏 45 跳跃游戏II 452 用最少数量的箭引爆气球 435 无重叠区间 763 划分字母区间 56 合并区间 55 跳跃游戏 局部最优:不管每次跳多少步,取最大跳跃步数,若覆 ...

  9. day36-435. 无重叠区间

    435. 无重叠区间 思路: 遇到二维数组的区间问题,先排序.画图,按照start递增排序,如果start相等则按照end递增. 为什么按照start递增排序?保证start有序,每个item的sta ...

最新文章

  1. java并发框架支持锁包括,tip/面试题_并发与多线程.md at master · 171437912/tip · GitHub...
  2. ping mac地址_局域网ip地址如何显示?一个软件搞定
  3. Maven之(二)Maven生命周期
  4. 设计模式-静态工厂之服务提供者框架
  5. Raft算法和开源实现
  6. 电脑实用mysql后C盘内存不足_电脑高手用这方法,终于解决了C盘空间不足的问题,网友:这操作服了...
  7. Generic Polygon Module in MAME 0.120u1
  8. 合成资产平台Public Mint与跨链资产协议Knit Finance达成合作
  9. java ee 程序_第一个 JavaEE 应用程序 - JavaWeb 入门开发教程
  10. 用Python怎样实现Excel中的公式向下填充?
  11. AI大神各显神通!百度深度学习集训营作品大赏
  12. 斐讯k2虚拟服务器设置,斐讯K2调配设置
  13. HTML中的Switch开关
  14. 如何计算CRC校验码(循环冗余检验码)
  15. java date 设置时区,Java 日期时区
  16. windows mysql 学习笔记 第八天
  17. java腾讯云人脸核身移动浮层H5接入
  18. 说明所有BeanPostProcessor的触发时机
  19. 三极管PNP与NPN控制区别
  20. limma包进行差异分析

热门文章

  1. 面试了一位3年多开发经验程序员,期望工资10K
  2. css3 纯css实现绘制三角形、箭头效果
  3. 进化:从孤胆极客到高效团队_极客历史记录的本周:微软上市,阿尔伯特·爱因斯坦的诞生,互联网成为跨洋的...
  4. 南充市住房公积金领取流程
  5. Max导入Sketchup单位不一致的设置
  6. Python之函数对象
  7. ListView与Adapter之间的观察者模式
  8. linux创建用户、用户组、授权读写权限等权限相关常用命令
  9. python中的pandas的两种基本使用_python数据分析:pandas基本操作
  10. Baumer工业相机堡盟相机如何进行固件升级