leetcode 的 Insert Interval 就是过不了大的# JobHunting - 待字闺中
c*u
1 楼
求好心人帮我看看,想用in place, 就是过不了大的,折腾好久了,遇到这个的时候挂
了:
Last executed input
[[3,5],[12,15]], [6,6]
code:
class Solution {
public:
vector insert(vector &intervals, Interval newInterval) {
bool is_new_inserted = false;
for(vector::iterator it = intervals.begin(); it< intervals.end
(); it++){
if ((*it).end < newInterval.start){
continue;
}
if ((*it).start > newInterval.end){
if(!is_new_inserted){
intervals.insert(it, newInterval);
is_new_inserted = true;
}
continue;
}
newInterval.start = min(newInterval.start, (*it).start);
newInterval.end = max(newInterval.end, (*it).end);
intervals.erase(it);
it--;
}
if(!is_new_inserted)
intervals.push_back(newInterval);
return intervals;
}
};
了:
Last executed input
[[3,5],[12,15]], [6,6]
code:
class Solution {
public:
vector
bool is_new_inserted = false;
for(vector
(); it++){
if ((*it).end < newInterval.start){
continue;
}
if ((*it).start > newInterval.end){
if(!is_new_inserted){
intervals.insert(it, newInterval);
is_new_inserted = true;
}
continue;
}
newInterval.start = min(newInterval.start, (*it).start);
newInterval.end = max(newInterval.end, (*it).end);
intervals.erase(it);
it--;
}
if(!is_new_inserted)
intervals.push_back(newInterval);
return intervals;
}
};