public class Solution
{
public IList<Interval> Merge(IList<Interval> intervals)
{
var len = intervals.Count;
if (len == )
{
return intervals;
}
var list = intervals.OrderBy(x => x.start).ToList();
int i = ;
while (i < list.Count)
{
int j = i;
while (i < list.Count - && list[j].end >= list[i + ].start)
{
//可以融合
//前项修改,后项删除
list[j].start = Math.Min(list[j].start, list[i + ].start);
list[j].end = Math.Max(list[j].end, list[i + ].end);
list.RemoveAt(i + );
}
i++;
}
return list;
}
}

提供一个python版本的实现:

 class Solution:
def merge(self, intervals: 'List[Interval]') -> 'List[Interval]':
intervals = sorted(intervals,key=lambda x:[x[],-x[]])
i =
while i < len(intervals) - :
curbegin = intervals[i][]
curend = intervals[i][] nextbegin = intervals[i+][]
nextend = intervals[i+][]
if curend >= nextbegin:
intervals.pop(i)
intervals[i]=[min(curbegin,nextbegin),max(curend,nextend)]
else:
i +=
return intervals

leetcode56的更多相关文章

  1. [array] leetcode-56. Merge Intervals - Medium

    leetcode-56. Merge Intervals - Medium descrition Given a collection of intervals, merge all overlapp ...

  2. leetcode56. Merge Intervals

    题目要求: Given a collection of intervals, merge all overlapping intervals. For example,Given [1,3],[2,6 ...

  3. [Swift]LeetCode56. 合并区间 | Merge Intervals

    Given a collection of intervals, merge all overlapping intervals. Example 1: Input: [[1,3],[2,6],[8, ...

  4. leetcode56:Merge Intervals

    大都是自定义了 Interval的比较方法. 突发奇想 int [] arr=new int[intervals.Count*2]; for(int i=0;i<intervals.Count; ...

  5. leetcode56:合并区间

    给出一个区间的集合,请合并所有重叠的区间.(解题思想来源于:https://blog.csdn.net/qq_34364995/article/details/80788049 ) 示例 1: 输入: ...

  6. LeetCode56:Jump Game

    Given an array of non-negative integers, you are initially positioned at the first index of the arra ...

  7. Leetcode56. Merge Intervals合并区间

    给出一个区间的集合,请合并所有重叠的区间. 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] ...

  8. leetcode56之合并区间

    题目描述: 给出一个区间的集合,请合并所有重叠的区间. 示例: 输入: [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1, ...

  9. leetcode56:restore-ip-addresses

    题目描述 现在有一个只包含数字的字符串,将该字符串重新存储成IP地址的形式,返回所有可能的情况. 例如: 给出的字符串为"25525511135", 返回["255.25 ...

随机推荐

  1. raid的一些简单知识

    日一.RAID定义RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁 ...

  2. 关于Ble通信库BluetoothKit的使用 以及可能出现的问题分析

    首先,这个库是用于BLE(低功耗蓝牙)通信的,地址:https://github.com/dingjikerbo/BluetoothKit 当然,也可以选择根据andorid提供的底层接口自己完成这部 ...

  3. 剑指Offer 48. 不用加减乘除做加法 (其他)

    题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. 题目地址 https://www.nowcoder.com/practice/59ac416b4b944300 ...

  4. L2-020. 功夫传人*

    L2-020. 功夫传人 参考博客 #include<vector> #include<cstring> #include<algorithm> using nam ...

  5. MYSQL数据模型

    DROP TABLE IF EXISTS `sh_category`; CREATE TABLE `sh_category` ( `id` int(11) NOT NULL AUTO_INCREMEN ...

  6. selenium-java,selenium版本和火狐浏览器版本对应关系

    selenium3.5.0,firefox57,geckodriver-v0.19.1

  7. es6学习日记3

    函数的扩展 ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法. function log(x, y) { y = y || 'World'; console.log(x, y); } ...

  8. webpack的入门教程

    webpack是模块打包工具/前端资源加载.它是根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源. webpack可以将css.less.js转换为一个静态文件,减少了页 ...

  9. input[type='file']默认样式

    <input type="file" name="" id="" value="" /> 当input的ty ...

  10. python 在一个excel存多个sheet

    import pandas as pdimport numpy as npimport osfrom sqlalchemy import create_engine def get_station_w ...