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;
    }
};
相关推荐
糕......9 分钟前
JDK安装与Java开发环境配置全攻略
java·开发语言·网络·学习
日日行不惧千万里9 分钟前
Java中Lambda Stream详解
java·开发语言·python
Trouvaille ~10 分钟前
【C++篇】让错误被温柔对待(上):异常基础与核心机制
运维·开发语言·c++·后端·异常·基础入门·优雅编程
沐知全栈开发10 分钟前
R 语言中的判断语句
开发语言
2401_8414956415 分钟前
【LeetCode刷题】零钱兑换
数据结构·python·算法·leetcode·动态规划·数组·时间复杂度
zd84510150017 分钟前
[LWIP] LWIP热插拔功能 问题调试
开发语言·php
趁月色小酌***17 分钟前
JAVA 知识点总结4
java·开发语言
wuguan_19 分钟前
C#:try和catch(保护程序不崩溃)
开发语言·c#·try catch
无限进步_20 分钟前
C++ STL list容器深度解析与模拟实现
开发语言·数据结构·c++·windows·git·list·visual studio
黑贝是条狗22 分钟前
Delphi TCP通信帧设计,类型Websocket通信帧
开发语言·c#