news 2026/4/9 16:07:26

力扣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/4/7 15:51:21

Postman还能做Mock?又学了一招!

1、什么是mock测试 Mock 测试就是在测试活动中&#xff0c;对于某些不容易构造或者不容易获取的数据/场景&#xff0c;用一个Mock对象来创建以便测试的测试方法。 2、Mock测试常见场景 无法控制第三方系统接口的返回&#xff0c;返回的数据不满足要求 依赖的接口还未开发完成…

作者头像 李华
网站建设 2026/4/8 7:25:57

搜狐号自媒体人的高效视频生产工具HeyGem

搜狐号自媒体人的高效视频生产工具HeyGem 在内容为王的时代&#xff0c;短视频平台的创作者们正面临前所未有的压力&#xff1a;日更、多更、高质量输出——这些要求几乎成了账号运营的标配。尤其对于搜狐号这类以资讯、知识类内容为主的平台&#xff0c;持续产出稳定风格的视频…

作者头像 李华
网站建设 2026/4/4 21:18:17

Python房价趋势分析:构建智能房价监控爬虫系统

一、前言&#xff1a;数据驱动的房地产市场洞察在当今快速变化的房地产市场中&#xff0c;掌握房价趋势对于投资者、购房者和政策制定者都至关重要。传统的房价数据分析往往依赖于官方发布的季度或年度报告&#xff0c;这种滞后性使得实时决策变得困难。本文将通过构建一个先进…

作者头像 李华
网站建设 2026/4/6 2:10:52

HeyGem是否支持并发任务?系统队列机制深度解析

HeyGem是否支持并发任务&#xff1f;系统队列机制深度解析 在AI数字人内容创作日益普及的今天&#xff0c;越来越多的企业和个人开始尝试批量生成口型同步视频。无论是制作系列课程、产品宣传&#xff0c;还是打造虚拟主播内容矩阵&#xff0c;用户都希望系统能“一口气处理多个…

作者头像 李华
网站建设 2026/4/6 22:01:50

ASG三权模式下各管理员的职责是什么

本文档提供了ASG系列产品的维护指导。 文章目录ASG三权模式下各管理员的职责是什么三权模式可以切换到普通模式吗三个默认管理员账号是否可编辑普通模式切换到三权模式后&#xff0c;原来的系统管理员、审计员账号还可以登录吗三权模式下&#xff0c;新建的管理员下可以再创建管…

作者头像 李华