bool static cmp(const Interval& i1, const Interval& i2)
{
return i1.start < i2.start;
}
vector<Interval> merge(vector<Interval> &intervals)
{
vector<Interval> res;
if (intervals.size() == 0)
return res;
sort(intervals.begin(), intervals.end(), this->cmp);
res.push_back(intervals[0]);
int resI = 0;
for (int i = 1 ; i < intervals.size(); i++)
{
if (intervals[i].start <= res[resI].end)
res[resI].end = intervals[i].end >res[resI].end ? intervals[i].end : res[resI].end;
else
{
res.push_back(intervals[i]);
resI++;
}
}
return res;
}Merge Intervals [leetcode]
最新推荐文章于 2020-04-08 15:26:51 发布
本文深入探讨了如何使用自定义比较函数对区间进行排序,并通过迭代实现区间合并,以达到优化算法性能的目的。
229

被折叠的 条评论
为什么被折叠?



