首页 > 其他 > 详细

leetcode 每日一题 56. 合并区间

时间:2020-06-04 14:10:13      阅读:26      评论:0      收藏:0      [点我收藏+]

技术分享图片

排序合并

思路:

用数组res记录合并结果,先把数组intervals排序,遍历数组intervals,如果res为空或者遍历的区间左边界比res中最后一个区间的右边界值大,则将遍历的区间添加到结果中,如果遍历的区间左边界比res最后一个区间的右边界值小,则更新res最后一个区间的右边界的值。

代码:

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

 

leetcode 每日一题 56. 合并区间

原文:https://www.cnblogs.com/nilhxzcode/p/13042721.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!