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

【Leetcode】合并区间

1 题目

以数组 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] 可被视为重叠区间。

2 分析

最简单的方案是排序,因为排序后数组左区间的相对关系可以确定(递增),只需要比较右区间就可以确定是否需要合并。不管新区间与上一个区间的左区间是递增还是相等,只需要比较上一个区间的右区间与新区间的左区间,这决定了这两个区间是否有包含关系。一旦不满足上面的条件,直接将新区间加入结果中即可。如果有包含关系,取两个区间中最大的右区间作为新的右区间即可。

defmerge(self,intervals):intervals.sort()ans=[]fori,intervalin
http://www.jsqmd.com/news/1091348/

相关文章:

  • 七到九年级英语梳理
  • 企业开发模式全景图谱:12种方法论的本质、优缺点与选型指南
  • 终极Gmail账号自动生成器:简单快速创建随机邮箱的完整教程
  • AWS VPC 和 ALB 部署规范
  • Adobe GenP 3.0完整教程:免费解锁Adobe CC全系列软件的终极指南
  • CVE-2023-22527漏洞复现:Confluence命令注入与权限校验缺失分析
  • 大模型MoE架构原理与实战:稀疏激活如何实现2%参数高效推理
  • 1234566
  • 高效解决跨平台音乐播放需求:Groove音乐播放器完整实践指南
  • AI Newsletter如何成为工程师的决策操作系统
  • 低功耗单片机MCU芯片主流型号盘点
  • 如何通过开源工具Forza Mods AIO重塑你的极限竞速地平线体验
  • 鸿蒙原生 ArkTS 布局之 padding 内边距:上下左右分别控制的艺术
  • 如何用Nucleus Co-op实现PC游戏分屏:终极免费解决方案
  • 轨迹的蓝图:方程求解与交点计算
  • 探索用 SlideML 让大模型生成 PPT 的实验方法
  • NVMe-snsd性能优化指南:如何调优以获得最佳存储网络性能
  • 众包平台中数据标注任务的质检体系设计——以帮帮星球为例
  • 统计学、数据科学、大数据管理,哪个更适合做数据?2026大学生选方向不迷路
  • Kettle 定时任务实战:从Kitchen/Pan脚本到系统调度全解析
  • 3个颠覆性改变:NoFences如何重构你的Windows桌面思维
  • 记录无人机的安全按键以及安全指示灯
  • 互联网大厂Java面试实录:JVM、Spring Cloud、Redis高并发、Kafka与AI RAG综合能力全考察
  • AI 编程工具怎么系统学习?从 Cursor、Codex 到 Claude Code、Kiro
  • 如何在3分钟内免费获取百度文库完整文档?127行代码的完美解决方案
  • Ansible工作架构与原理详解
  • 【锦图简历 · 简历诊断与面试助手】HR 视角七维自查:让简历脱颖而出
  • SpringBoot自动装配和starter
  • design-resources-for-developers:开发者需要的设计资源,这一个仓库全齐了
  • SM4国密算法前后端加解密实战:从等保合规到工程落地