C++速通LeetCode中等第9题-合并区间

排序后迭代,遇到符合条件的就删除前一项,合并到后一项。

cpp 复制代码
class Solution {
public:
    vector<vector<int>> merge(vector<vector<int>>& intervals) {
        int left = 0,right = 0;
        sort(intervals.begin(), intervals.end());
        vector<int> tmp;
        for(auto it = intervals.begin(); it != --(intervals.end()); )
        {
            if((*it)[1] >= (*(++it))[0])
            {
                left = (*(--it))[0];
                right = (*it)[1];
                it = intervals.erase(it);
                right = max(right,(*it)[1]);
                tmp.push_back(left);
                tmp.push_back(right);
                *(it) = tmp;
                tmp.clear();
            }
        }
        return intervals;
    }
};
相关推荐
多米Domi011几秒前
0x3f第33天复习 (16;45-18:00)
数据结构·python·算法·leetcode·链表
SunkingYang7 分钟前
QT中使用Lambda表达式作为槽函数用法,以及捕获列表和参数列表用法与区别
c++·qt·用法·lambda表达式·捕获列表·槽函数·参数列表
森叶21 分钟前
Java 比 Python 高性能的原因:重点在高并发方面
java·开发语言·python
微露清风28 分钟前
系统性学习C++-第二十二讲-C++11
java·c++·学习
qq_3168377531 分钟前
uni.chooseMedia 读取base64 或 二进制
开发语言·前端·javascript
方圆工作室34 分钟前
【C语言图形学】用*号绘制完美圆的三种算法详解与实现【AI】
c语言·开发语言·算法
Lips6111 小时前
2026.1.16力扣刷题
数据结构·算法·leetcode
小二·1 小时前
Python Web 开发进阶实战:混沌工程初探 —— 主动注入故障,构建高韧性系统
开发语言·前端·python
Lkygo1 小时前
LlamaIndex使用指南
linux·开发语言·python·llama
进阶小白猿1 小时前
Java技术八股学习Day20
java·开发语言·学习