当前位置: 首页 > news >正文

56.合并区间

以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。

示例 1:

输入:intervals = [[1,3],[2,6],[8,10],[15,18]]
输出:[[1,6],[8,10],[15,18]]
解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].

示例 2:

输入:intervals = [[1,4],[4,5]]
输出:[[1,5]]
解释:区间 [1,4] 和 [4,5] 可被视为重叠区间。

示例 3:

输入:intervals = [[4,7],[1,4]]
输出:[[1,7]]
解释:区间 [1,4] 和 [4,7] 可被视为重叠区间。

思路:

这道题要求:合并所有重叠的区间,并返回 一个不重叠的区间数组

需要思考:什么情况下才能合并?如何判断?如果重叠又该如何合并?

        首先需要保证区间是从小到大的顺序,拿示例一为例,只需要判断第一个区间[1,3]的右端点3和第二个区间[2,6]的左端点,如果大于,那么就存在重叠,那么重叠又该如何合并?右端点应该选择出两个区间的最大值

class Solution {public int[][] merge(int[][] intervals) {if (intervals.length == 0) {return new int[0][2];}Arrays.sort(intervals, new Comparator<int[]>() {public int compare(int[] interval1, int[] interval2) {return interval1[0] - interval2[0];}});List<int[]> merged = new ArrayList<int[]>();for (int i = 0; i < intervals.length; ++i) {int L = intervals[i][0], R = intervals[i][1];if (merged.size() == 0 || merged.get(merged.size() - 1)[1] < L) {merged.add(new int[]{L, R});} else {merged.get(merged.size() - 1)[1] = Math.max(merged.get(merged.size() - 1)[1], R);}}return merged.toArray(new int[merged.size()][]);}
}

http://www.dtcms.com/a/557447.html

相关文章:

  • 卡尔曼滤波算法原理详解:核心公式、C 语言代码实现及电机控制 / 目标追踪应用
  • 互联网创业项目整合网站创建一个公司需要什么
  • 便宜的网站设计企业重庆医院门户网站建设
  • 做网站要会那些ps公司核名查询官网
  • YAML 配置文件格式
  • Linux网络--网络基础概念
  • 网站没有内容 能做优化吗新网站关键词怎么优化
  • Arbess实践指南(1) - 使用Arbess+gitee+sourcefare实现Java项目自动化部署及代码扫描
  • 《系统规划与管理师教程(第2版)》方法篇-第7章 网络环境规划 知识点总结
  • 萧县哪有做网站的制作网站民治
  • 力扣2517. 礼盒的最大甜蜜度
  • 哪个网站可以直接做ppt简单网页模板
  • 福州网站建设托管个人网站设计成品下载
  • Android WebView 从入门到最佳实践
  • 青岛公路建设集团有限公司网站好乐买网站推广方式
  • 自定义字段/动态字段的实现方法汇总
  • Python---数据容器(Dict 字典)
  • zabbix实现监控Hadoop、Docker、SSL证书过期时间应用的保姆级实操流程
  • 怎么在网站空间上传文件西地那非口崩片
  • Linux 容器安装 conda 和 pip
  • 中国建设银行企业门户网站wordpress theme 企业
  • k8s问答题(1)
  • 怎么用dw做带登陆的网站北京新网数码信息技术有限公司
  • MySQL 5.7 安装Audit 审计日志插件
  • 【Docker】P5 Docker Compose 实战指南:一键部署 WordPress + MySQL
  • 升鲜宝供应链管理系统-生鲜配送系统_分拣端界面重构设计(一)
  • 网站降权的原因discuz论坛网站做的门户
  • 【GitHub探索】代码开发AI辅助工具trae-agent
  • 绍兴做网站建设公司建设项目竣工验收公告网站
  • 量子计算机操作系统的破晓:中国“本源司南“与全球开源生态全景解析