博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Leetcode 56: Merge Intervals
阅读量:5008 次
发布时间:2019-06-12

本文共 1430 字,大约阅读时间需要 4 分钟。

Given a collection of intervals, merge all overlapping intervals.

For example,

Given [1,3],[2,6],[8,10],[15,18],
return [1,6],[8,10],[15,18].

 

1 /** 2  * Definition for an interval. 3  * public class Interval { 4  *     public int start; 5  *     public int end; 6  *     public Interval() { start = 0; end = 0; } 7  *     public Interval(int s, int e) { start = s; end = e; } 8  * } 9  */10 11 public class IntervalComparer: IComparer
12 {13 public int Compare(Interval x, Interval y)14 {15 return x.start != y.start ? x.start - y.start : x.end - y.end;16 }17 }18 19 public class Solution {20 public IList
Merge(IList
intervals) {21 if (intervals.Count < 2) return intervals;22 23 var list = intervals.ToList();24 25 list.Sort(new IntervalComparer());26 27 var result = new List
();28 29 for (int i = 0; i < list.Count; i++)30 {31 if (i == 0 || list[i].start > result[result.Count - 1].end)32 {33 result.Add(list[i]);34 }35 else36 {37 result[result.Count - 1].end = Math.Max(result[result.Count - 1].end, list[i].end);38 }39 }40 41 return result;42 }43 }

 

转载于:https://www.cnblogs.com/liangmou/p/7807596.html

你可能感兴趣的文章
delphi DCC32命令行方式编译delphi工程源码
查看>>
paip.输入法编程----删除双字词简拼
查看>>
or1200下raw-os学习(任务篇)
查看>>
Android Message机制
查看>>
传递给Appium服务器以开启相应安卓Automation会话的Capabilities的几点说明【转】
查看>>
【转】提高C#编程水平的50个要点
查看>>
厚积薄发,拥抱 .NET 2016
查看>>
ZOJ - 3939 The Lucky Week(日期循环节+思维)
查看>>
小花梨的取石子游戏(思维)
查看>>
Ubuntu 18.04安装arm-linux-gcc交叉编译器
查看>>
.net core i上 K8S(一)集群搭建
查看>>
django drf 深入ModelSerializer
查看>>
如何在github上展示作品——为你的项目生成一个快速访问的网址如(DaisyWang88.github.io)...
查看>>
Android手机直播(二)摄像机
查看>>
MYSQL分页 limit 太慢优化
查看>>
ios 使用GCD 多线程 教程
查看>>
Koa中设置中文Cookie值
查看>>
[19/03/27-星期三] 容器_Iterator(迭代器)之遍历容器元素(List/Set/Map)&Collections工具类...
查看>>
VS2010-MFC(常用控件:图片控件Picture Control)
查看>>
ROS学习笔记二(创建ROS软件包)
查看>>