Leetcode: Merge Intervals
来源:互联网 发布:项羽举鼎是真的吗 知乎 编辑:程序博客网 时间:2024/06/06 07:23
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]
.
比较简单,排序之后遍历即可。注意比较函数需要是global或者static的,cplusplus上说的不清楚。
/** * Definition for an interval. * struct Interval { * int start; * int end; * Interval() : start(0), end(0) {} * Interval(int s, int e) : start(s), end(e) {} * }; */class Solution {public: static bool interval_less(Interval i1, Interval i2) { return i1.start < i2.start; } vector<Interval> merge(vector<Interval> &intervals) { sort(intervals.begin(), intervals.end(), interval_less); vector<Interval> result; if (intervals.empty()) { return result; } int start = intervals[0].start; int end = intervals[0].end; for (int i = 1; i < intervals.size(); ++i) { if (end >= intervals[i].start) { end = max(intervals[i].end, end); } else { result.push_back(Interval(start, end)); start = intervals[i].start; end = intervals[i].end; } } result.push_back(Interval(start, end)); return result; }};
0 0
- LeetCode: Merge Intervals
- LeetCode Merge Intervals
- LeetCode: Merge Intervals
- [Leetcode] Merge Intervals
- leetcode 28: Merge Intervals
- Leetcode: Merge Intervals
- [LeetCode] Merge Intervals
- [LeetCode]Merge Intervals
- leetcode merge intervals
- [leetcode]Merge Intervals
- LeetCode-Merge Intervals
- [leetcode] Merge Intervals
- LeetCode - Merge Intervals
- 【leetcode】Merge Intervals
- leetcode Merge Intervals
- LeetCode Merge Intervals
- [LeetCode] Merge Intervals
- LeetCode | Merge Intervals
- 修改UIImage的大小
- eclipse中的.project 和 .classpath文件的具体作用
- web的基本配置--xmapp、CodeIgniter
- Ubuntu12.04配置Eclipse+Tomcat7
- 黑马程序员_关于正则表达式
- Leetcode: Merge Intervals
- java(2014版)连接数据库的工具类
- Greetings
- git提取出两个版本之间的差异文件并打包
- 小议Linux中的僵死进程
- A*算法/博弈树
- 黑马程序员_JAVA编程基础知识
- 黑马程序员--泛型
- Oracle 字符集的查看和修改