Data Structures22 min read

Interval Structures

Handle overlapping intervals using sorting and merging patterns, common in scheduling and timelines.

David Miller
October 17, 2025
4.3k154

Intervals appear in:

  • meetings
  • bookings
  • time ranges

Merge intervals

def merge(ints):
    ints.sort()
    res = [ints[0]]
    for s, e in ints[1:]:
        last = res[-1]
        if s <= last[1]:
            last[1] = max(last[1], e)
        else:
            res.append([s, e])
    return res

print(merge([[1,3],[2,6],[8,10]]))

Graph

flowchart LR
  A[1-3] --> B[2-6]
  B --> C[Merged 1-6]

Remember

  • sort first
  • then merge overlaps
#Python#Advanced#Intervals