56. 合并区间

56. 合并区间

class Solution:
    def merge(self, intervals):
        """
        :type intervals: List[Interval]
        :rtype: List[Interval]
        """
        num = len(intervals)
        if num <= 1:
            return intervals
        res = []
        intervals = sorted(intervals,key = lambda start: start.start)
        m = intervals[0].start
        n = intervals[0].end
        for i in range(1,num):
            if intervals[i].start <= n:
                n= max(n,intervals[i].end)
            else:
                res.append([m,n])
                m = intervals[i].start
                n = intervals[i].end
        res.append([m,n])
        return res