leetcode归并排序_什么是区间

leetcode归并排序_什么是区间以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。示例 1:输入:intervals = [[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:输入:intervals = [[1,4],[4,5

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。

示例 1:

输入:intervals = [[1,3],[2,6],[8,10],[15,18]]
输出:[[1,6],[8,10],[15,18]]
解释:区间 [1,3][2,6] 重叠, 将它们合并为 [1,6].
示例 2:

输入:intervals = [[1,4],[4,5]]
输出:[[1,5]]
解释:区间 [1,4][4,5] 可被视为重叠区间。
 

提示:

1 <= intervals.length <= 104
intervals[i].length == 2
0 <= starti <= endi <= 104

题解
相对0坐标进行排序,然后贪心即可。

class Solution { 
   
public:
    bool cmp(vector<int>&a,vector<int>&b){ 
   
        if(a[0] == b[0])return a[1] < b[1];
        return a[1] < b[1];
    }
    vector<vector<int>> merge(vector<vector<int>>& intervals) { 
   
        sort(intervals.begin(),intervals.end());
        vector<vector<int> >res;
        int i = 0;
        while(i < intervals.size()){ 
   
            int j = i,l = intervals[i][1];
            while(j < intervals.size() && intervals[j][0] <= l){ 
   
                l = max(l,intervals[j][1]);
                j ++;
            }
            res.push_back({ 
   intervals[i][0],l});
            i = j;
        }

        return res;
    }
};
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/168877.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Python基础(3)—八种数据类型

    Python基础(3)—八种数据类型Python的八种数据类型八种数据类型分别是:number(数字)、string(字符串)、Boolean(布尔值)、None(空值)list(列表)、tuple(元组)、dict(字典)、set(集合)。下面,我将这八种类型的相关知识,做一个梳理。 1.number(数字类型)2.string(字符串类型)3.Boolean(布尔值)与空值4.list…

  • Matlab&nbsp;fmincon函数用法

    Matlab&nbsp;fmincon函数用法原文地址:fmincon函数用法”>Matlab fmincon函数用法作者:长笛人倚楼Gloria这个函数在之前优化工具箱一文中已经介绍过,由于其应用广泛,所以这里通过实例单独整理一下其用法。一、基本介绍求解问题的标准型为minF(X)s.tAXAeqX=beqG(x)Ceq(X)=0VLB 其中X为n维变元向量,G(x)与Ceq(X)均为非线性函数组成的

  • linux启动ftp命令_linux安装ftp命令

    linux启动ftp命令_linux安装ftp命令ftp服务器在网上较为常见,Linuxftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件下面由学习啦小编为大家整理了linux下开启ftp命令的相关知识,希望对大家有所帮助!linux下启动FTP命令的方式一般linux都有vsftpd吧,启动命令是servicevsftpdstart,你要限制匿名登录的话,修改它的配置文件/etc/vsftpd/vsftpd.conf,把an…

  • 【菠萝狗四足机器人】二次开发教程–第三章 【腿部校准和步态效果调试】

    【菠萝狗四足机器人】二次开发教程–第三章 【腿部校准和步态效果调试】腿部校准和步态效果调试1前言2腿部调中(0位校准)3步态效果调试3.1重心标定3.2自动重心补偿量调节4结束1前言承接上次的教程,本次文章,将教你怎么对Py-appleDynamics6.5及6.5以后版本的软件进行腿部校准(调中)和步态效果调试。Py-appleDynamics开源四足控制软件Github调中顾名思义为“机器狗腿部中位调整“,既对机器人的腿部进行标定,使他的机械0位和软件0位重合,以实现机械的运动效果和软件对应。从Py-appleDynamic

  • 2018怎样发英文外链才能提升谷歌排名

    2018怎样发英文外链才能提升谷歌排名自从搜索引擎诞生以来,外链一直都是占比较重要的位置,但是谷歌一直在完善算法,让搜索引擎显示更好的搜索结果,2014年以前,通过软件群发外链,会收到不错的效果,但是现在谷歌搜索引擎已经可以识别这些不自然的外链,一旦你的网站再这些群发外链,就会被惩罚,严重的话,被K。我们一直坚守手工做高质量相关性外链,无论谷歌算法如何变,我们的网站一直迄立不倒!那么2018年,我们如何做高质量的相关性英文外链呢?1,…

  • Mysql授予权限

    Mysql授予权限授予权限需要使用实例级账户登录后操作,以root为例主要操作包括:查看所有用户 修改密码 删除用户1.查看所有用户所有用户及权限信息存储在mysql数据库的user表中 查看user表的结构descuser;主要字段说明: Host表示允许访问的主机 User表示用户名 authentication_string表示密码,为加密后的值 查看所有…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号