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

56. 合并区间

在这里插入图片描述
【题目】:56. 合并区间

class Solution {
public:vector<vector<int>> merge(vector<vector<int>>& intervals) {// 按照左端点排序sort(intervals.begin(), intervals.end(), [&](vector<int> lhs, vector<int> rhs) {return lhs[0] < rhs[0];});vector<vector<int>> res;for(vector<int> interval : intervals) {if(res.size() != 0 && interval[0] <= res.back()[1]) {res.back()[1] = max(interval[1], res.back()[1]);}else {res.push_back(interval);}}return res;}
};
  • 时间复杂度: O(nlogn)
  • 空间复杂度: O(n)

先把数组按照左端点排序,这样可以保证可以合并的区间是连续在一起的。
再遍历数组,如果已加入结果数组的最后一个元素的右端点>=当前遍历数组元素的左端点,就进行合并(合并的时候也要注意判断这两个元素的右端点的大小)

http://www.lryc.cn/news/527556.html

相关文章:

  • BOM对象location与数组操作结合——查询串提取案例
  • Jetson Orin Nano Super之 onnxruntime 编译安装
  • 开发环境搭建-3:配置 nodejs 开发环境 (fnm+ node + pnpm)
  • [SWPUCTF 2022 新生赛]js_sign
  • 农业信息化的基本框架
  • OpenAI的真正对手?DeepSeek-R1如何用强化学习重构LLM能力边界——DeepSeek-R1论文精读
  • Vue 3 中的父子组件传值:详细示例与解析
  • 回顾2024,展望2025
  • 【Python实现机器遗忘算法】复现2021年顶会 AAAI算法Amnesiac Unlearning
  • Vue 3 30天精进之旅:Day 03 - Vue实例
  • 【ArcGIS微课1000例】0141:提取多波段影像中的单个波段
  • 【第九天】零基础入门刷题Python-算法篇-数据结构与算法的介绍-六种常见的图论算法(持续更新)
  • 落地 轮廓匹配
  • 【漫话机器学习系列】064.梯度下降小口诀(Gradient Descent rule of thume)
  • JAVA(SpringBoot)集成Kafka实现消息发送和接收。
  • AI刷题-蛋糕工厂产能规划、优质章节的连续选择
  • 在线可编辑Excel
  • 什么是词嵌入?Word2Vec、GloVe 与 FastText 的区别
  • WPS数据分析000010
  • Qt中QVariant的使用
  • Avalonia UI MVVM DataTemplate里绑定Command
  • 动态规划DP 数字三角型模型 最低通行费用(题目详解+C++代码完整实现)
  • deepseek R1的确不错,特别是深度思考模式
  • Linux 常用命令 - sort 【对文件内容进行排序】
  • MyBatis最佳实践:提升数据库交互效率的秘密武器
  • 选择困难?直接生成pynput快捷键字符串
  • DeepSeek-R1:强化学习驱动的推理模型
  • 国内优秀的FPGA设计公司主要分布在哪些城市?
  • 3.日常英语笔记
  • 基于RIP的MGRE实验