Search⌘ K
AI Features

Solution: Interval List Intersections

Explore how to solve the problem of finding intersections between two sorted lists of closed intervals. Understand the use of two pointers iterating through each list to identify overlapping intervals efficiently. This lesson guides you through the logic and code needed to implement the solution with O(n + m) time complexity, improving over the naive nested loop approach.

Statement

Given two lists of closed intervalsA closed interval [start, end] (with start <= end) includes all real numbers x such that start <= x <= end., intervalLista and intervalListb, return the intersection of the two interval lists.

Each interval in the lists has its own start and end time and is represented as [start, end]. Specifically:

  • intervalLista[i] = [starti, endi]

  • intervalListb[j] = [startj, endj]

The intersection of two closed intervals i and j is either:

  • An empty set, if they do not overlap, or

  • A closed interval [max(starti, startj), min(endi, endj)] if they do overlap.

Also, each list of intervals is pairwise disjoint and in sorted order.

Constraints:

  • 00 \leq ...