Merge Intervals | Python nlogn solution
class Solution:
    def insert(self, intervals: List[List[int]], newInterval: List[int]) -> List[List[int]]:
        if len(intervals) == 0:
            return [newInterval]
        intervals.append(newInterval)
        intervals = sorted(intervals, key = lambda x : x[0])
        # now merge the intervals
        i = 1
        while i < len(intervals):
            p_i = intervals[i-1]
            c_i = intervals[i]
            if p_i[0] <= c_i[0] and c_i[0] <= p_i[-1]:
                intervals[i-1] = [p_i[0], max(c_i[-1], p_i[-1])]
                del intervals[i]
            else:
                i += 1
        return intervals
Comments (0)
No comments yet.