您的位置:首页 > 其它

LeetCode 57: Insert Interval

2017-08-23 14:17 260 查看
/**
* Definition for an interval.
* public class Interval {
*     int start;
*     int end;
*     Interval() { start = 0; end = 0; }
*     Interval(int s, int e) { start = s; end = e; }
* }
*/
class Solution {
public List<Interval> insert(List<Interval> intervals, Interval newInterval) {
List<Interval> result = new ArrayList<>();

int i = 0;
while (i < intervals.size() && intervals.get(i).end < newInterval.start) {
result.add(intervals.get(i++));
}

while (i < intervals.size() && intervals.get(i).start <= newInterval.end) {
newInterval = new Interval(Math.min(newInterval.start, intervals.get(i).start),
Math.max(newInterval.end, intervals.get(i).end));
i++;
}
result.add(newInterval);

while (i < intervals.size()) {
result.add(intervals.get(i++));
}
return result;
}
}


Since the input is ordered and not overlapped intervals. It is OK to have this kind of simply implementation.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: