题目链接:https://leetcode-cn.com/problems/merge-intervals/
题目如下:
class Solution {
public:
vector<vector<int>> merge(vector<vector<int>>& intervals) {
vector<vector<int>> ans;
if(intervals.size()==0) return ans;
sort(intervals.begin(),intervals.end());//对数组的首个元素进行排序
int l=intervals[0][0],r=intervals[0][1];
for(int i=1;i<intervals.size();i++){
if(r<intervals[i][0]){//比较区间a的右边和区间b的左边
ans.push_back({l,r});
l=intervals[i][0],r=intervals[i][1];
}else {//进而比较区间a的右边和区间b的右边
r=max(r,intervals[i][1]);
}
}
ans.push_back({l,r});
return ans;
}
};