方法就是跟interval没交集的时候 要是在前就push 进去 在后就hold着它,把interval push进去..然后等下一次(肯定会在下一个的前面 input的assumption) 直到loop完再补一个.. 还有merge的话就只merge 然后hold住不push因为有可能不只merge 一个
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 | public class Solution {
public List<Interval> insert(List<Interval> intervals, Interval newInterval) {
List<Interval> result = new ArrayList<Interval>();
for (Interval interval:intervals){
if (interval.end < newInterval.start){
result.add(interval);
}else if (interval.start > newInterval.end){
result.add(newInterval);
newInterval = interval;
}else{
newInterval = new Interval(Math.min(interval.start, newInterval.start), Math.max(interval.end, newInterval.end));
}
}
result.add(newInterval);
return result;
}
}
|
No comments:
Post a Comment