Non Overlapping Intervals

MediumIntervals
Asked byFacebookAmazonMicrosoft

Problem

Given an array of intervals, return the minimum number of intervals you need to remove so that the remaining intervals do not overlap.

Examples

Example 1
Input:intervals = [[1,2],[2,3],[3,4],[1,3]]
Output:1
Remove [1,3].
Example 2
Input:intervals = [[1,2],[1,2],[1,2]]
Output:2

Constraints

  • 1 <= intervals.length <= 10^5

Solve it in the editor. Sign in free to run your Python or JavaScript against test cases, get a verdict, and track your attempts.

Solve on FeatCode →

How to approach it: the Intervals pattern

Problems about ranges — meeting times, event schedules, ranges on a number line — almost always start with sorting the intervals by start (or end) time, then sweeping through them once.

Look for this pattern when

  • The problem talks about meetings, bookings, ranges, or scheduling.
  • You need to merge overlapping ranges, find gaps, or count how many overlap at once.

Read the full Intervals guide →

Video walkthroughs

Original problem on LeetCode ↗

More Intervals problems