Merge Intervals
来源:互联网 发布:mysql如何导出数据库 编辑:程序博客网 时间:2024/06/11 13:28
学会,熟练用排序,不要犯傻傻的错误。
联系会议室问题。
/** * Definition for an interval. * public class Interval { * int start; * int end; * Interval() { start = 0; end = 0; } * Interval(int s, int e) { start = s; end = e; } * } */public class Solution { public List<Interval> merge(List<Interval> intervals) { List<Interval> res = new LinkedList<>(); if (intervals == null) { throw new IllegalArgumentException("haha"); } if (intervals.size() == 0) { return res; } //Arrays.sort(intervals, new Comporator<Interval>() { Collections.sort(intervals, new Comparator<Interval>() { @Override public int compare(Interval i1, Interval i2) { if (i1.start != i2.start) { return i1.start - i2.start; } else { return i1.end - i2.end; } } }); Interval prev = intervals.get(0); for (int i = 0; i < intervals.size(); i++) { Interval cur = intervals.get(i); if (cur.start > prev.end) { res.add(prev); prev = cur; } else { Interval merge = new Interval(prev.start, Math.max(prev.end, cur.end)); prev = merge; } } res.add(prev); return res; }}
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]
.
0 0
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- merge intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- Merge Intervals
- git ssh
- Xcode快捷键
- 更换CentOS 7 的下载源为阿里云
- Spring bean
- Android 、Java 验证二代身份证号码是否正确
- Merge Intervals
- Elasticsearch java API (13)Search API 使用聚合
- 数据不再遥远——如何构建企业级的数据分析平台
- SSH原理与运用(一):远程登录
- 关于nginx配置成功后,无法访问的问题
- iOS应用在后台长久运行
- TCP长连接与短连接的区别
- Leetcode-binary-tree-inorder-traversal
- 关于JS访问文件服务器的HTTP文件地址实现文件下载