Write a method named mergeIntervals
that examines an ordered list of intervals and returns a new list of integers that merges any intervals that overlap.
Your method accepts as its parameter a list of two-element lists of integers, where each sublist represents a [start, end]
interval, sorted by starting number.
For example, if the list of existing intervals is [[1, 2], [3, 5], [4, 6], [7, 10], [8, 9], [12, 15]]
, you should merge the overlapping intervals [3, 5]
and [4, 6]
into [3, 6]
and merge [7, 10]
and [8, 9]
into [7, 10]
, to return the list [[1, 6], [7, 10], [12, 15]]
.
Or if the list of existing intervals is [[1, 3], [2, 3], [4, 8], [5, 6], [7, 10], [10, 14]]
, you should merge the overlapping intervals to return the list [[1, 3], [4, 14]]
.
You may assume the input data is valid.