Skip to content

Latest commit

 

History

History
35 lines (26 loc) · 645 Bytes

56.md

File metadata and controls

35 lines (26 loc) · 645 Bytes

[56] Merge Intervals

Description

link


Solution

  • See Code

Code

O(nlogn)

class Solution:
    def merge(self, intervals: List[List[int]]) -> List[List[int]]:
        if not intervals:
            return []
        intervals = sorted(intervals, key=lambda x: x[0])
        res = []
        for s, e in intervals:
            if not res:
                res.append([s, e])
                continue
            if s <= res[-1][1]:
                res[-1][1] = max(res[-1][1], e)
            else:
                res.append([s, e])
        return res