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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



猜您在找 Leetcode练习(Python):字符串类:第17题:电话号码的字母组合:给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 [LeetCode] 56. Merge Intervals 合并区间 Leetcode练习(Python):数组类:第54题:给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 Leetcode练习(Python):回溯算法类:第46题:全排列:给定一个 没有重复 数字的序列,返回其所有可能的全排列。 Leetcode练习(Python):回溯算法类:第47题:全排列 II:给定一个可包含重复数字的序列,返回所有不重复的全排列。 Leetcode练习(Python):数组类:第85题:给定一个仅包含 0 和 1 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积。 Leetcode练习(Python):数组类:第152题:给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字)。 Leetcode练习(Python):数组类:第209题:给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。 Leetcode练习(Python):数组类:第78题:给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。 说明:解集不能包含重复的子集。 leetcode 合并重叠区间变异 合并多个时间段 取并集
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM