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

力扣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; }

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

http://www.jsqmd.com/news/193099/

相关文章:

  • Claude Code创始人13个实战技巧,收藏这篇就够了!
  • 如何让AI推广我的品牌?成长期企业GEO优化全攻略
  • 接口测试的原则、用例与流程
  • 2026年情人节送女友礼物推荐:聚焦不同恋爱阶段与预算的10强礼品盘点。 - 品牌推荐
  • python+requests接口自动化框架
  • 2026年情人节送女友礼物推荐:基于用户真实评价的TOP10诚意之选 - 品牌推荐
  • 网络安全核心要点精讲:一篇带你搞懂那些必知必会的基础概念
  • 按Token计费模式适合HeyGem这类生成任务吗?
  • 2026 GEO优化服务商选型避坑指南:按预算+成长阶段精准匹配,告别无效投入
  • 知名股权激励咨询品牌企业:解锁员工股权激励方案的密码 - mypinpai
  • 推荐靠谱且性价比高的股权激励咨询公司——创锟咨询 - 工业设备
  • 我让AI反过来“采访“我,需求文档再也没返工过
  • sqlserver查询某条到某条,1000条后的语句(流程)
  • Postman还能做Mock?又学了一招!
  • 博途1200恒压供水系统:设计与实现
  • 2026年情人节送女友礼物推荐:知名品牌与创意礼品对比研究及榜单 - 品牌推荐
  • 揭秘PHP容器中环境变量的致命陷阱:90%开发者都忽略的3个细节
  • LDPC性能仿真研究:参数化分析与不同译码方案比较,包括误比特率曲线与图像subplot展示
  • 中英混合语音合成效果实测:GLM-TTS多语言支持能力评测
  • 2026年北京监理公司推荐:主流企业横向测评与5强实力对比解析。 - 品牌推荐
  • 2026年北京监理公司推荐:主流企业横向测评与5家高适配度排名。 - 品牌推荐
  • 2026年北京监理公司推荐:技术实力与服务能力双维度实测TOP5盘点 - 品牌推荐
  • python+selenium的web自动化之元素的常用操作
  • 2026年北京监理公司推荐:聚焦重大工程案例的5家高口碑公司深度解析 - 品牌推荐
  • 北京楚珩医疗科技有限公司是做什么的?
  • AI模型来自Wav2Lip?HeyGem口型同步核心技术溯源
  • PHP图像识别结果解析全攻略(附源码下载与性能优化建议)
  • vue 如何实现 vxe-table 的按键操作回车键的上下移动修改为 Tab 键的左右切换
  • 用开源模型强化你的 OCR 工作流 - 实践
  • Avid Media Composer专业剪辑流程整合HeyGem