57. Insert Interval

if (newInterval == null || intervals == null) {
return intervals;
}

List<Interval> result = new ArrayList<Interval>();

int index = 0;
//分三种循环其实是四种情况,else是两种情况
for(Interval interval : intervals){
if(interval.end < newInterval.start){
  result.add(interval);
  index++;
}
else if(interval.start > newInterval.end){
  result.add(interval);
}
else{
  newInterval.start = Math.min(interval.start,newInterval.start);
  newInterval.end = Math.max(interval.end,newInterval.end);
  }
}
result.add(index,newInterval);
return result;

posted @ 2017-01-18 13:43  EnoWang  阅读(47)  评论(0)    收藏  举报