Skip to content

Commit d606533

Browse files
435 java solution
1 parent 93232c6 commit d606533

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
public class Solution {
2+
public int eraseOverlapIntervals(int[][] intervals) {
3+
int intervalsRemoved = 0;
4+
5+
//sort by the first vale in the intervals least to greatest
6+
Arrays.sort(intervals, (arr1,arr2) -> Integer.compare(arr1[0], arr2[0]));
7+
System.out.println(Arrays.deepToString(intervals));
8+
9+
//get the first interval
10+
int[] intervalFirst = intervals[0];
11+
12+
// then loop through the rest of the intervals
13+
for(int i = 1; i < intervals.length; i++){
14+
if(firstIntervalwithinSecond(intervalFirst, intervals[i])){
15+
//mark first interval to be removed
16+
intervalsRemoved++;
17+
// determine which interval to remove
18+
//remove the interval that ends last
19+
if(intervalFirst[1] > intervals[i][1]){
20+
intervalFirst = intervals[i];
21+
}
22+
} else {
23+
intervalFirst = intervals[i];
24+
}
25+
}
26+
return intervalsRemoved;
27+
}
28+
29+
public boolean firstIntervalwithinSecond(int[] intervalFirst, int[] intervalSecond){
30+
return intervalSecond[0] < intervalFirst[1];
31+
}
32+
}

0 commit comments

Comments
 (0)