LCR074.合并区间
链接:LCR074.合并区间
难度:Medium
标签:数组、排序
简介:以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。
题解 1 - cpp
- 编辑时间:2021-12-23
- 执行用时:20ms
- 内存消耗:13.8MB
- 编程语言:cpp
- 解法介绍:排序后合并。
class Solution {
public:
vector<vector<int>> merge(vector<vector<int>>& intervals) {
sort(intervals.begin(), intervals.end());
vector<vector<int>> ans;
for (auto& interval : intervals) {
if (ans.size() > 0 && ans[ans.size() - 1][1] >= interval[0]) {
ans[ans.size() - 1][1] =
max(interval[1], ans[ans.size() - 1][1]);
} else {
ans.push_back(interval);
}
}
return ans;
}
};