美文网首页
3 合并区间

3 合并区间

作者: 玲儿珑 | 来源:发表于2021-03-17 21:10 被阅读0次

【题目】以数组intervals表示若干个区间的集合,其中单个区间为intervals[i]=[starti, endi],请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。
【示例1】
输入:intervals = [[1,3], [2,6], [8,10], [15,18]]
输出:[[1,6], [8,10], [15,18]]
【示例1】
输入:intervals = [[1,4], [4,5]]
输出:[[1,5]]
【提示】
1<=intervals.length<=10的4次方
0<=starti<=endi<10的4次方
【答案】

let intervals = [[1,3],[2,6],[8,10],[15,18]]
var merge = function(intervals) {
    let i = 0
    let len = intervals.length
    while ( i < len-1 ) {
        intervals.sort(function(a, b){
            return a[0] - b[0]
        })
        if ( intervals[i+1][0] <= intervals[i][1] ) {
            if (intervals[i+1][1] < intervals[i][1]) {
                intervals.splice(i+1, 1)
            } else {
                intervals.splice(i, 2, [intervals[i][0], intervals[i+1][1]])
            }
            len = intervals.length
            i --
        }
        i++
    }
    return intervals
};
merge(intervals)

相关文章

  • LeetCode 56 合并区间

    56. 合并区间 给出一个区间的集合,请合并所有重叠的区间。 示例 1: 输入: [[1,3],[2,6],[8,...

  • LeetCode: 合并区间

    合并区间 题目叙述: 给出一个区间的集合,请合并所有重叠的区间。 示例: 示例1:输入: [[1,3],[2,6]...

  • Leetcode 56 合并区间

    合并区间 题目 给出一个区间的集合,请合并所有重叠的区间。 示例1:输入: [[1,3],[2,6],[8,10]...

  • leetCode进阶算法题+解析(八)

    合并区间 题目:给出一个区间的集合,请合并所有重叠的区间。 示例 1:输入: [[1,3],[2,6],[8,10...

  • 3 合并区间

    【题目】以数组intervals表示若干个区间的集合,其中单个区间为intervals[i]=[starti, e...

  • LeetCode:合并区间

    56. 合并区间 给出一个区间的集合,请合并所有重叠的区间。示例 1:输入: [[1,3],[2,6],[8,10...

  • 区间合并算法

    0X00 区间合并 803. 区间合并 57. 插入区间

  • LeetCode 56 [Merge Intervals]

    原题 给出若干闭合区间,合并所有重叠的部分。 样例给出的区间列表 => 合并后的区间列表: 解题思路 首先,把区间...

  • 34. 4区间 合并 | 2021-07-01

    4区间合并 够 4 个区间 忽略 1 和 2 以 2 的低 点 画标记线。 实战 发现 区间 3为 扩张 形...

  • 排序

    56-合并区间57-插入区间 字典序排数 给定 n =1 3,返回 [1,10,11,12,13,2,3,4,5,...

网友评论

      本文标题:3 合并区间

      本文链接:https://www.haomeiwen.com/subject/xctycltx.html