Leetcode练习(Python):数组类:第56题: 给出一个区间的集合,请合并所有重叠的区间。

题目:给出一个区间的集合,请合并所有重叠的区间。
思路:方案设计比较简单,之前可能是数组的排序用的方法有点复杂了,测试可以通过,提交的时候老是显示超时。
程序:
class Solution:
    def merge(self, intervals: List[List[int]]) -> List[List[int]]:
        auxiliary = intervals
        auxiliary.sort(key = lambda data : data[0])
        index = 1
        while index < len(auxiliary):
            if auxiliary[index][0] <= auxiliary[index-1][1]:
                auxiliary[index-1][1] = max(auxiliary[index-1][1], auxiliary[index][1])
                del auxiliary[index]
            else:
                index += 1
        return auxiliary
posted on 2020-04-20 15:58  桌子哥  阅读(1243)  评论(0编辑  收藏  举报