LeetCode56. 合并区间

LeetCode56.合并区间
此题是经典模板题,见到背过就行
题解思路:
在这里插入图片描述

代码

/*
经典模板题:见一遍背过

前置知识:我们对二维数组vector用sort排序,
    排序的规则是,按照每一个一维数组(充当每行的行首)这个关键字进行排序的

这个题的每个区间只有两个元素
*/
class Solution {
public:
    vector<vector<int>> merge(vector<vector<int>>& a) {
        vector<vector<int>> result;
        
        if(a.empty()) return result; // 力扣特色

        sort(a.begin(),a.end());

        int l = a[0][0], r = a[0][1];
        // 第一个区间已经有了,[l,r],我们从第二个区间开始
        for(int i = 1; i < a.size(); i++){
            if(a[i][0] > r){
                // 无交集就合并
                result.push_back({l,r});
                l = a[i][0];
                r = a[i][1];
            } else {
                // 有交集就更新右端点
                r = max(r,a[i][1]);
            } 
        }

        // 将最后一维护的区间也放入到答案中
        result.push_back({l,r});

        return result;
    }
};

相关推荐

  1. LeetCode 56 合并区间

    2024-04-28 04:46:02       31 阅读
  2. LeetCode56.合并区间

    2024-04-28 04:46:02       27 阅读
  3. Leetcode56_合并区间

    2024-04-28 04:46:02       15 阅读
  4. leetcode56--合并区间

    2024-04-28 04:46:02       8 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-28 04:46:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-28 04:46:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-28 04:46:02       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-28 04:46:02       20 阅读

热门阅读

  1. Windows API函数之网络类函数

    2024-04-28 04:46:02       12 阅读
  2. 比特币怎么买?新手小白教程

    2024-04-28 04:46:02       12 阅读
  3. 模电——二极管基本电路(第一章)

    2024-04-28 04:46:02       13 阅读
  4. CPP线程管理类实现

    2024-04-28 04:46:02       11 阅读
  5. ubuntu18源码安装postgresql15.2数据库

    2024-04-28 04:46:02       17 阅读
  6. Autosar MCAL-S32k324 Crypto配置-基于EB

    2024-04-28 04:46:02       16 阅读
  7. [docker] docker compose

    2024-04-28 04:46:02       13 阅读
  8. SpringBoot项目如何实现热启动?

    2024-04-28 04:46:02       15 阅读
  9. asp.net core 自定义过滤器 注入的几种方式和实现

    2024-04-28 04:46:02       13 阅读