首页 > 其他分享 >leetcode 56. 合并区间

leetcode 56. 合并区间

时间:2023-02-21 19:02:51浏览次数:37  
标签:vector return 56 合并 back ret intervals leetcode size


区间左端点进行排序
如果intervals小于等于一个元素直接返回
如果大于1个
按照左边点进行排序
从左至右依次合并

class Solution {
public:
static bool cmp(vector<int>&a,vector<int>&b){
return a[0] < b[0];
}

bool ischong(vector<int>&a,vector<int>&b){
if(a[0] > b[1] || b[0] > a[1]){
return false;
}else{
return true;
}
return false;
}

vector<vector<int>> merge(vector<vector<int>>& intervals) {
vector<vector<int>> ret;
if( intervals.size()==0 ){
return ret;
}

sort(intervals.begin(),intervals.end(),cmp);

ret.push_back( intervals[0] );

for(int i = 1;i < intervals.size();i ++){
if( ischong( ret.back(),intervals[i] ) ){
ret[ ret.size()-1 ][1] = max(ret[ ret.size()-1 ][1],intervals[i][1]);
}else{
ret.push_back( intervals[i] );
}
}
return ret;
}
};

leetcode 56. 合并区间_其他


标签:vector,return,56,合并,back,ret,intervals,leetcode,size
From: https://blog.51cto.com/liyunhao/6077028

相关文章