57. 插入区间

57. 插入区间


题目链接:57. 插入区间

代码如下:

cpp 复制代码
class Solution {
public:
    vector<vector<int>> insert(vector<vector<int>>& intervals, vector<int>& newInterval) {
        vector<vector<int>> res;

        //插入后进行区间合并
        intervals.push_back(newInterval);
        sort(intervals.begin(),intervals.end());

        for (int i = 0; i < intervals.size(); i++)
        {
            int left = intervals[i][0], right = intervals[i][1];
               
            //结果为空或者上个区间的右端点小于现区间的左端点,证明不连续,就放进去
            if (res.empty() || res.back()[1] < left)
            {
                res.push_back({left,right});
            }
            else//连续,就更新左右端点
            {
                res.back()[1] = max(res.back()[1], right);
            }
        }

        return res;
    }
};
相关推荐
yodala6 分钟前
C++中的内存管理(二)
开发语言·c++
艾莉丝努力练剑1 小时前
【C语言16天强化训练】从基础入门到进阶:Day 5
c语言·c++·学习·算法
重启的码农4 小时前
llama.cpp 分布式推理介绍(5) RPC 通信协议
c++·人工智能·神经网络
liulilittle4 小时前
UTF-8 编解码可视化分析
c++·字符串·unicode·string·字符·char·utf8
重启的码农4 小时前
llama.cpp 分布式推理介绍(6) 张量序列化 (rpc_tensor)
c++·人工智能·神经网络
让我们一起加油好吗4 小时前
【C++】模板(进阶)
c++·visualstudio·模板·泛型编程
雨落倾城夏未凉4 小时前
2.如何创建自己的类
c++·后端
Ustinian_3106 小时前
【C/C++】For 循环展开与性能优化【附代码讲解】
c语言·开发语言·c++
MZ_ZXD00111 小时前
springboot汽车租赁服务管理系统-计算机毕业设计源码58196
java·c++·spring boot·python·django·flask·php
岁忧14 小时前
(nice!!!)(LeetCode 每日一题) 679. 24 点游戏 (深度优先搜索)
java·c++·leetcode·游戏·go·深度优先