Skip to content

Commit 65f6c8a

Browse files
57. Insert Interval (java)
1 parent f79a791 commit 65f6c8a

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
/**
2+
* Definition for an interval.
3+
* public class Interval {
4+
* int start;
5+
* int end;
6+
* Interval() { start = 0; end = 0; }
7+
* Interval(int s, int e) { start = s; end = e; }
8+
* }
9+
*/
10+
class Solution {
11+
public List<Interval> insert(List<Interval> intervals, Interval newInterval) {
12+
List<Interval> list = new LinkedList<>();
13+
int i = 0;
14+
while ((i < intervals.size()) && (intervals.get(i).end < newInterval.start)) list.add(intervals.get(i++));
15+
while ((i < intervals.size()) && (intervals.get(i).start <= newInterval.end)) {
16+
newInterval = new Interval(
17+
Math.min(intervals.get(i).start, newInterval.start),
18+
Math.max(intervals.get(i).end, newInterval.end)
19+
);
20+
i++;
21+
}
22+
list.add(newInterval);
23+
while (i < intervals.size()) list.add(intervals.get(i++));
24+
return list;
25+
}
26+
}

0 commit comments

Comments
 (0)