Skip to content

Commit 33ff200

Browse files
committed
56
1 parent 3f678e6 commit 33ff200

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
class Solution {
2+
public int[][] merge(int[][] intervals) {
3+
List<int[]> res = new ArrayList<>();
4+
if (intervals == null || intervals.length == 0) {
5+
return new int[0][];
6+
}
7+
Arrays.sort(intervals, (a,b) -> a[0] - b[0]);
8+
int start = intervals[0][0];
9+
int end = intervals[0][1];
10+
for (int[] interval : intervals) {
11+
if (interval[0] <= end) {
12+
end = Math.max(interval[1], end);
13+
} else {
14+
res.add(new int[]{start, end});
15+
start = interval[0];
16+
end = interval[1];
17+
}
18+
}
19+
res.add(new int[]{start, end});
20+
int[][] result = new int[res.size()][];
21+
result = res.toArray(result);
22+
return result;
23+
}
24+
}

0 commit comments

Comments
 (0)