首页 > TAG信息列表 > LeetCode56

LeetCode56. Merge Intervals

题意 给n个区间, 将重叠的区间进行合并 解法 排序 代码 vector<vector<int>> merge(vector<vector<int>>& intervals) { int N = intervals.size(); if (N == 0) return {}; sort(intervals.begin(), intervals.end()); vector<vector<int>&g

leetcode56.合并区间

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

leetcode56 合并区间

思路:按左边界排序,若相邻两个区间重叠(表现为intervals[i][0] <= end),则更新最大右边界end,这样就可以合并更多的区间了,整体最优:合并所有重叠的区间。 class Solution { public: static bool cmp(const vector<int> &a, const vector<int> &b){ return a[0] < b[

Leetcode56-合并区间

Leetcode56-合并区间 思路:判断左右区间的大小 遍历intervals中的区间,和res中的最后一个区间相比较。 [[1,3],[2,6],[8,10],[15,18]] 首先排序:[[1,3],[2,6],[8,10],[15,18]] res初始化为:res=[[]] 赋初值:res[0]=intervals[0]=[[1,3]] 然后从[2,6]开始遍历,因为【2,6】的左边端点

leetcode56. 合并区间

https://leetcode-cn.com/problems/merge-intervals/ 主要在于两个循环,内循环用于合并小区间,外循环决定了合并之后剩下多少个区间   class Solution { public: vector<vector<int>> merge(vector<vector<int>>& intervals) { sort(intervals.begin(), intervals.