Interview Guides

Given an array of intervals intervals, where each interval is a pair [start, end], merge all overlapping intervals and return a new array of non-overlapping intervals that covers the same ranges. The output may be returned in any order, but an efficient solution should exploit sorting.
1 <= intervals.length <= 10^4intervals[i].length == 20 <= start <= end <= 10^4