β Merge Intervals
Last updated
Last updated
vector<Interval> Solution::insert(vector<Interval> &intervals, Interval newInterval) {
vector<Interval> res;
for(Interval test: intervals)
// New Interval comes after Test with no overlap
if(newInterval.start > test.end)
// insert Test
res.push_back(test);
// new interval comes before thest with no overlap
else if(test.start > newInterval.end) {
// insert New Interval
res.push_back(newInterval);
// Put Test into New Interval
newInterval = test;
// any other case of over lap
} else
// merge Test with New Interval
newInterval = Interval(min(test.start, newInterval.start), max(test.end, newInterval.end));
res.push_back(newInterval);
return res;
}