56. Merge Intervals
来源:互联网 发布:php支付宝接口开发文档 编辑:程序博客网 时间:2024/05/23 16:54
problem:
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]
.
2.扫描排序后的目标区间数组,将这些区间合并成若干个互不相交的区间。
/** * 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 cmp(Interval& ina, Interval& inb) { return ina.start < inb.start; } vector<Interval> merge(vector<Interval>& intervals) { vector<Interval> result; if(intervals.size() <= 1) return intervals; //排序 sort(intervals.begin(),intervals.end(),cmp); // result.push_back(intervals[0]); for(int i=1; i<intervals.size(); i++) { Interval preIn = result.back(); Interval curIn = intervals[i]; //分三种情况 if(curIn.start <= preIn.end && curIn.end > preIn.end) { preIn.end = curIn.end; result.pop_back(); result.push_back(preIn); } else if(curIn.start > preIn.end) { result.push_back(curIn); } } return result; }};
0 0
- [LeetCode]56.Merge Intervals
- 56. Merge Intervals Leetcode
- LeetCode --- 56. Merge Intervals
- LeetCode 56.Merge Intervals
- [Leetcode] 56. Merge Intervals
- [leetcode] 56.Merge Intervals
- 【leetcode】56. Merge Intervals
- 56. Merge Intervals
- [leetcode] 56.Merge Intervals
- 56. Merge Intervals
- **LeetCode 56. Merge Intervals
- LeetCode 56. Merge Intervals
- 56. Merge Intervals
- leetcode 56. Merge Intervals
- 【LeetCode】56. Merge Intervals
- LeetCode 56. Merge Intervals
- 56. Merge Intervals
- 【leetcode】56. Merge Intervals
- MYSQL中常用的强制性操作(例如强制索引)
- 第一篇博客
- 二叉树的遍历
- Python生成词云——WordCount入门
- 百度开源人工智能库Wrap-CTC的简单编译(只涉及cpu部分,gpu和那个Torch不会
- 56. Merge Intervals
- Android地图SDK无法支持64位平台
- windows ftp 使用
- JZOJ4919. 神炎皇
- Strtus2和SpringMVC的区别
- 第十五周oj题目输出特定的字符串
- ROS机器人Diego 1#制作(十三)launch启动文件
- PHP学习之路(二)——WampSever
- 心累