news 2026/6/10 17:31:24

力扣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/6/10 0:10:18

如何利用GLM-TTS进行高保真语音克隆?附详细安装包与使用手册

如何利用 GLM-TTS 实现高保真语音克隆&#xff1f; 在虚拟主播、有声读物和智能客服日益普及的今天&#xff0c;用户对语音合成的要求早已不再满足于“能说”&#xff0c;而是追求“像人”——音色自然、情感丰富、发音准确。传统的 TTS 系统往往受限于固定角色、训练成本高、个…

作者头像 李华
网站建设 2026/6/10 11:16:11

【PHP分库分表实战指南】:百万级数据迁移全链路解决方案

第一章&#xff1a;Shell脚本的基本语法和命令Shell 脚本是 Linux 和 Unix 系统中自动化任务的核心工具&#xff0c;它允许用户通过编写一系列命令来执行复杂的操作。一个 Shell 脚本通常以 #!/bin/bash 开头&#xff0c;称为 shebang&#xff0c;用于指定解释器。脚本的结构与…

作者头像 李华
网站建设 2026/6/10 11:17:12

“提示词工程师”会成为未来最性感的职业,还是最先消失的职业?

在人工智能浪潮席卷全球的当下&#xff0c;一个新兴的职业标签正在科技圈内迅速走红——“提示词工程师”&#xff08;Prompt Engineer&#xff09;。它被誉为“与AI对话的魔法师”&#xff0c;年薪百万的传闻不绝于耳&#xff0c;成为无数技术人眼中充满诱惑力的未来职业。然而…

作者头像 李华
网站建设 2026/6/10 11:17:16

PHP图像识别结果解析全攻略(附源码下载与性能优化建议)

第一章&#xff1a;PHP图像识别结果解析全攻略&#xff08;附源码下载与性能优化建议&#xff09; 在现代Web应用中&#xff0c;图像识别已成为内容审核、智能分类和自动化处理的重要技术。PHP虽非传统AI语言&#xff0c;但通过调用第三方API或集成Python脚本&#xff0c;仍可高…

作者头像 李华
网站建设 2026/6/9 17:15:12

阿米巴经营模式

阿米巴经营模式是稻盛和夫独创的管理方法&#xff0c;核心是把企业拆成多个独立核算的小团队&#xff08;阿米巴&#xff09;&#xff0c;让每个团队像小公司一样自主经营&#xff0c;通过全员参与和数据驱动来提升效率。 核心三支柱‌‌经营哲学‌&#xff1a;强调“全员参与”…

作者头像 李华
网站建设 2026/6/10 11:16:38

制造-手表:精密计时软件校准测试——软件测试从业者的专业指南

精密计时软件在手表制造中的核心地位‌ 在当代手表制造业中&#xff0c;精密计时软件&#xff08;如石英机芯的微控制器程序&#xff09;扮演着“心脏”角色&#xff0c;负责毫秒级时间校准。软件测试从业者必须确保其在极端环境下的可靠性&#xff1a;一款高端手表若计时误差…

作者头像 李华