Faaez Razeen

Non-Overlapping Intervals

  • 1 min read
  • Interval
  • LC-Medium

3 years ago

Solution

TimeSpaceExplanation
O()O()
def eraseOverlapIntervals(self, intervals: List[List[int]]) -> int: intervals.sort(key=lambda x: x[0]) prev_interval_end = intervals[0][1] to_remove = 0 for i in range(1, len(intervals)): if intervals[i][0] < prev_interval_end: to_remove += 1 prev_interval_end = min(prev_interval_end, intervals[i][1]) else: prev_interval_end = intervals[i][1] return to_remove