思路:先考虑,在所有排序的情况下进行写代码,再考虑没有排序的情况下进行排序下
class Solution {
public:
vector<vector<int>> merge(vector<vector<int>>& intervals) {
//这个题目不一定是有序的,所以如果要按照有序方法进行的话,需要进行排序下
vector<vector<int>> mergeVec;
if(intervals.size()==0){
return mergeVec;
}
sort(intervals.begin(),intervals.end()); //排序
for(int i=0;i<intervals.size()-1;i++){
if(intervals[i][1]<intervals[i+1][0]){
mergeVec.push_back(intervals[i]);
}else if(intervals[i][1]>=intervals[i+1][1]){ //排序
intervals[i+1]= intervals[i]; //排序
}else if(intervals[i][1]<intervals[i+1][1]){
intervals[i+1][0]= intervals[i][0];
}
}
mergeVec.push_back(intervals[intervals.size()-1]);
return mergeVec;
}
};