Non-Overlapping Intervals¶
Table of Contents¶
- 435. Non-overlapping Intervals (Medium)
- 646. Maximum Length of Pair Chain (Medium)
- 1520. Maximum Number of Non-Overlapping Substrings (Hard)
- 3458. Select K Disjoint Special Substrings (Medium)
435. Non-overlapping Intervals¶
-
LeetCode | LeetCode CH (Medium)
-
Tags: array, dynamic programming, greedy, sorting
435. Non-overlapping Intervals - Python Solution
from typing import List
def eraseOverlapIntervals(intervals: List[List[int]]) -> int:
if len(intervals) <= 1:
return 0
intervals.sort(key=lambda x: x[0])
result = 0
for i in range(1, len(intervals)):
if intervals[i][0] >= intervals[i - 1][1]:
continue
else:
result += 1
intervals[i][1] = min(intervals[i][1], intervals[i - 1][1])
return result
print(eraseOverlapIntervals([[1, 2], [2, 3], [3, 4], [1, 3]])) # 1
646. Maximum Length of Pair Chain¶
-
LeetCode | LeetCode CH (Medium)
-
Tags: array, dynamic programming, greedy, sorting
1520. Maximum Number of Non-Overlapping Substrings¶
-
LeetCode | LeetCode CH (Hard)
-
Tags: string, greedy
3458. Select K Disjoint Special Substrings¶
-
LeetCode | LeetCode CH (Medium)
-
Tags: hash table, string, dynamic programming, greedy, sorting