Skip to content

Commit

Permalink
Time: 10 ms (25.51%), Space: 46.6 MB (41.26%) - LeetHub
Browse files Browse the repository at this point in the history
  • Loading branch information
Amit-S-Sahu committed Oct 21, 2024
1 parent cf03469 commit 5057276
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions 0056-merge-intervals/0056-merge-intervals.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
class Solution {
public int[][] merge(int[][] intervals) {
Arrays.sort(intervals, Comparator.comparingInt(a -> a[0]));

int ans[][] = new int[intervals.length][2];
int k = 0;

ans[0][0] = intervals[0][0];
ans[0][1] = intervals[0][1];

for (int i = 1; i < intervals.length; i++) {
int lastEnd = ans[k][1];

if (intervals[i][0] > lastEnd) {
k++;
ans[k][0] = intervals[i][0];
ans[k][1] = intervals[i][1];
}
else ans[k][1] = Math.max(lastEnd, intervals[i][1]);
}

return Arrays.copyOfRange(ans, 0, k + 1);
}
}

0 comments on commit 5057276

Please sign in to comment.