/* * 57. Insert Interval * 12.5 by Mingyang * 一个一个比就对了,根本不用比较器 * newInterval就像一个泡泡一样,一个一个的把其他相同的merge起来 * 过了这个以后就不会再遇到了,所以要合并掉对方 */
public List<Interval> insert(List<Interval> intervals, Interval newInterval) { List<Interval> res = new ArrayList<Interval>(); for (Interval each : intervals) { if (each.end < newInterval.start) { res.add(each); } else if (each.start > newInterval.end) { res.add(newInterval); newInterval = each; } else { int nstart = Math.min(each.start, newInterval.start); int nend = Math.max(newInterval.end, each.end); newInterval = new Interval(nstart, nend); } } res.add(newInterval); return res; }