Search⌘ K
AI Features

Solution: Insert Interval

Understand how to efficiently insert a new interval into a sorted list of non-overlapping intervals while maintaining order and merging overlaps. Discover an optimized linear-time solution that avoids sorting, by leveraging interval properties and traversing once to build the merged list. This lesson equips you with a clear method to solve interval insertion problems commonly tested in coding interviews.

Statement

You are given a list of non-overlapping intervals, intervals, where each interval is represented as [starti, endi] and the list is sorted in ascending order by the start of each interval (starti). You are also given another interval, newInterval = [start, end].

Your task is to insert newInterval into the list of intervals such that the list remains sorted by starting times and still contains no overlapping intervalsOverlapping intervals are two or more intervals with at least one common point in time.. If any intervals overlap after the insertion, merge them accordingly.

Return the updated list of intervals.

Note: You don’t need to modify intervals in place. You can make a new array and return it.

Constraints:

  • 00 \leq intervals.length 104\leq 10^4

  • intervals[i].length, newInterval.length ==2 ...