Insert Interval


Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if necessary).
You may assume that the intervals were initially sorted according to their start times.
Example 1:
Given intervals [1,3],[6,9], insert and merge [2,5] in as [1,5],[6,9].
Given [1,2],[3,5],[6,7],[8,10],[12,16], insert and merge [4,9] in as [1,2],[3,10],[12,16].



Example 2:
This is because the new interval [4,9] overlaps with [3,5],[6,7],[8,10].
Solution:
first check the intervals, if not intersected with the new interval, push it to the result; otherwise update the new interval (merge them). Finally, find the correct insert position and insert the new interval. Linear complexity. 

Comments

Popular posts from this blog

Maximum Gap

Binary Tree Maximum Path Sum

[ITint5] Maximum Subarray for a Circular Array