Skip to content

Commit bfda98c

Browse files
Merge pull request #175 from HmmCorn/oliver
Non-overlapping Intervals
2 parents 50d120b + a79d3b1 commit bfda98c

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
class Solution {
2+
func eraseOverlapIntervals(_ intervals: [[Int]]) -> Int {
3+
4+
let n = intervals.count
5+
6+
let sortedIntervals = intervals.sorted {
7+
if $0[1] == $1[1] {
8+
return $0[0] < $1[0]
9+
}
10+
return $0[1] < $1[1]
11+
}
12+
13+
var select = 0
14+
var currentEnd = -5 * 10 * 10 * 10 * 10
15+
16+
for interval in sortedIntervals {
17+
let start = interval[0]
18+
let end = interval[1]
19+
20+
if start >= currentEnd {
21+
select += 1
22+
currentEnd = end
23+
}
24+
}
25+
26+
return n - select
27+
}
28+
}

0 commit comments

Comments
 (0)