leetcode 56 合并区间

画个坐标轴,思路立有,直接贪心维护区间 start 和 end 就行了嘛

class Solution(object):
    def merge(self, intervals):
        """
        :type intervals: List[List[int]]
        :rtype: List[List[int]]
        """
        if not intervals:
            return []

        intervals.sort(key=lambda x: x[0])
        start, end = intervals[0][0], intervals[0][1]
        result = []
        for item in intervals:
            if item[0] <= end:
                end = max(end, item[1])
            else:
                result.append([start, end])
                start = item[0]
                end = item[1]
        result.append([start, end])        
        return result
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。