news 2026/9/3 3:36:31

力扣56 合并区间 java实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣56 合并区间 java实现

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 <= intervals.length <= 104
  • intervals[i].length == 2
  • 0 <= starti <= endi <= 104

按左边界先排序,让所有的相邻区间尽可能的重叠在一起,若intervals[i][0] <= intervals[i - 1][1]则说明区间有重叠,此时左区间为intervals[i - 1][0],右区间为intervals[i][1] 和 intervals[i - 1][1]中较大的那个,具体实现如下:

public static void main(String[] args) { // 测试用 int[][] nums = {{1,3},{2,6},{8,10},{15,18}}; int[][] res = merge(nums); for (int[] ints : res) { System.out.println(Arrays.toString(ints)); } } public static int[][] merge(int[][] intervals) { if (intervals.length < 2){ return intervals; } Arrays.sort(intervals,(a,b) ->{ if (a[0] == b[0]){ return a[1] - b[1]; } return a[0] - b[0]; }); List<int[]> list = new ArrayList<>(); for (int i = 1; i < intervals.length; i++) { if (intervals[i][0] <= intervals[i - 1][1]){ intervals[i][0] = intervals[i - 1][0]; intervals[i][1] = Math.max(intervals[i][1], intervals[i - 1][1]); }else { list.add(intervals[i - 1]); } if (i == intervals.length - 1){ list.add(intervals[i]); } } int[][] res = list.toArray(new int[list.size()][]); return res; }

以上为记录分享用,代码较差请见谅

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 23:21:02

【PHP跨域预检请求终极指南】:彻底搞懂OPTIONS请求与CORS机制

第一章&#xff1a;PHP跨域预检请求的核心概念当浏览器发起跨域请求时&#xff0c;某些条件下会自动发送一个预检请求&#xff08;Preflight Request&#xff09;&#xff0c;以确认实际请求是否安全。该机制由CORS&#xff08;跨域资源共享&#xff09;规范定义&#xff0c;主…

作者头像 李华
网站建设 2026/9/2 21:54:35

智能锁App蓝牙连接测试指南(面向软件测试从业者)

‌1. 测试环境搭建‌ ‌硬件配置‌&#xff1a; 多型号手机&#xff08;Android/iOS主流机型&#xff09;自行车智能锁设备&#xff08;支持BLE 4.0&#xff09;蓝牙信号干扰源&#xff08;如WiFi路由器、其他蓝牙设备&#xff09; ‌软件环境‌&#xff1a; App测试版本&…

作者头像 李华
网站建设 2026/9/3 1:38:49

企业商用是否授权?HeyGem开源协议类型待明确

企业商用是否授权&#xff1f;HeyGem开源协议类型待明确 在AI数字人技术迅速普及的今天&#xff0c;越来越多的企业开始尝试用虚拟形象替代真人出镜——无论是制作课程视频、品牌宣传&#xff0c;还是搭建智能客服系统。这类需求催生了一批轻量级、可本地部署的音视频合成工具…

作者头像 李华
网站建设 2026/9/3 2:16:39

揭秘:2025年大学生学习网络安全还有出路吗?

目录 一、行业需求&#xff1a;政策与技术双重驱动&#xff0c;人才缺口持续扩大二、就业方向&#xff1a;从技术深耕到合规管理&#xff0c;路径多元三、挑战与应对&#xff1a;如何提升竞争力四、行动路线&#xff1a;大学生如何高效准备 &#x1f48e; 1、网络安全&#xf…

作者头像 李华
网站建设 2026/9/3 0:24:44

CI/CD自动化流水线集成HeyGem质量检测环节

CI/CD自动化流水线集成HeyGem质量检测环节 在AI生成内容&#xff08;AIGC&#xff09;快速渗透教育、金融、客服等行业的今天&#xff0c;数字人视频正从技术演示走向规模化落地。越来越多企业将HeyGem这类音视频同步系统用于批量制作播报视频、教学课件或客户服务内容。然而&a…

作者头像 李华
网站建设 2026/9/2 23:31:00

博途1200恒压供水系统:设计与实现

博途1200恒压供水程序&#xff0c;恒压供水&#xff0c;一拖三&#xff0c;PID控制&#xff0c;3台循环泵&#xff0c;软启动工作&#xff0c;带超压&#xff0c;缺水保护&#xff0c;西门子1200KTP1000触摸屏在现代工业和民用建筑中&#xff0c;恒压供水系统发挥着重要作用&am…

作者头像 李华