merge intervals
来源:互联网 发布:centos重启vnc服务 编辑:程序博客网 时间:2024/05/29 08:41
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]
.
比较tricky的就是先排序,然后比较头尾是不是需要merge,如需要比较尾部是不是需要,否则就不merge, push
/** * 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 comp(Interval& l, Interval&r){ return l.start<r.start; } vector<Interval> merge(vector<Interval> &intervals) { sort(intervals.begin(),intervals.end(),comp); vector<Interval> res; if (intervals.size()==0) return res; res.push_back(intervals[0]); int end=0; for (int i=1; i<intervals.size();i++){ if (intervals[i].start<=res[end].end){ if (intervals[i].end>=res[end].end) res[end].end=intervals[i].end; } else{ res.push_back(intervals[i]); end++; } } return res; }};
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
- Oracle Study之案例--数据恢复神器Flashback(1)
- 哈夫曼树和哈夫曼编码
- CURLOPT_HEADER 控制是否返回请求头信息
- JAVA MD5算法
- 详谈 UNIX 环境进程异常退出
- merge intervals
- 采用FLAG_ACTIVITY_CLEAR_TOP退出整个程序(多activity)
- Struts2拦截器(Interceptor)
- xml
- Android 用纯代码实现复杂界面
- iOS修改UILabel的行间距
- SQL多表连接查询实例 左外连接 右外连接 全外连接 及 内连接
- Oracle Study之案例--数据恢复神器Flashback(2)
- 基础连接已经关闭: 服务器关闭了本应保持活动状态的连接。(附带截图)