news 2026/5/31 14:22:45

力扣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/5/29 17:34:13

PHP程序员进阶之路:掌握这6步,轻松实现区块链式交易追踪

第一章&#xff1a;PHP程序员进阶之路&#xff1a;从基础到区块链思维转型 对于长期深耕于Web后端开发的PHP程序员而言&#xff0c;技术进阶不仅是语言层面的拓展&#xff0c;更是一次思维范式的跃迁。从处理表单请求到构建高并发分布式系统&#xff0c;再到理解去中心化架构&a…

作者头像 李华
网站建设 2026/5/28 16:08:46

大型语言模型技术圆桌讨论:从理论到生产的挑战与未来

大型语言模型圆桌讨论&#xff1a;技术挑战与行业未来 大型语言模型&#xff08;LLMs&#xff09;的卓越能力已成为焦点&#xff0c;引发了关于其影响的广泛讨论和推测。 本次小组讨论涉及&#xff1a; 未来将何去何从&#xff1f;提示词&#xff08;prompting&#xff09;的出…

作者头像 李华
网站建设 2026/5/30 17:06:01

移动端App封装HeyGem PWA渐进式网页应用

移动端App封装HeyGem PWA渐进式网页应用 在AI内容创作工具日益普及的今天&#xff0c;一个现实问题摆在开发者面前&#xff1a;如何让基于Python和Gradio构建的数字人视频生成系统——比如HeyGem——走出实验室、PC浏览器和局域网&#xff0c;真正触达普通用户&#xff1f;尤其…

作者头像 李华
网站建设 2026/5/30 17:03:33

‌熔炉控制软件安全测试:保障玻璃制造的生命线

在玻璃制造工业中&#xff0c;熔炉是核心设备&#xff0c;其控制软件&#xff08;如基于PLC或SCADA的系统&#xff09;负责管理高温熔融过程、温度调节和安全联锁。一旦软件失效&#xff0c;可能导致灾难性事故&#xff0c;如熔炉爆炸或生产中断。因此&#xff0c;安全测试不仅…

作者头像 李华
网站建设 2026/5/30 18:45:36

【2026年最新】一口气讲明白网安工程师

一文讲透网络安全工程师与渗透测试&#xff1a;高薪职业解析&#xff0c;附200G免费教程&#xff0c;速速收藏&#xff01; 文章详细介绍了网络安全工程师的工作内容&#xff0c;包括防御系统设置&#xff08;防火墙、入侵检测系统&#xff09;和模拟黑客攻击的渗透测试&#…

作者头像 李华
网站建设 2026/5/20 11:02:25

EasyGBS打造变电站高效智能视频监控解决方案

一、方案背景在数字化浪潮席卷电力行业的当下&#xff0c;变电站作为电力输送与分配的核心枢纽&#xff0c;其运行的安全性与稳定性直接关乎社会生产生活的正常运转。然而&#xff0c;传统变电站监控模式设备存在兼容性差、数据处理滞后、管理效率低下等问题&#xff0c;无法满…

作者头像 李华