leetcode-Merge Intervals
来源:互联网 发布:怎样看待网络语言暴力 编辑:程序博客网 时间:2024/06/08 10:14
描述: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]
.
/** * Definition for an interval. * struct Interval { * int start; * int end; * Interval() : start(0), end(0) {} * Interval(int s, int e) : start(s), end(e) {} * }; */
找出公共区间,并合并
本题首先要按照Interval的start进行排序
static bool comp(const Interval& i1,const Interval& i2) { return i1.start < i2.start;}
sort(intervals.begin(),intervals.end(),comp);完整代码
class Solution {public: static bool comp(const Interval& i1,const Interval& i2) { return i1.start < i2.start; } vector<Interval> merge(vector<Interval> &intervals) { if(intervals.size()==0) { return intervals; } sort(intervals.begin(),intervals.end(),comp); vector<Interval> result; result.push_back(intervals[0]); int j=0; for(int i=1;i<intervals.size();i++) { if((intervals[i].start<result[j].end || intervals[i].start==result[j].end) && intervals[i].end>result[j].end) { result[j].end=intervals[i].end; } else if(intervals[i].start>result[j].end) { result.push_back(intervals[i]); j++; } } 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
- Chrome涉及到开源代码列表(转载)
- JSP项目中连接数据库出现中文用户名无法通过登录验证问题的解决
- C++编写Config类读取配置文件
- vs2010
- Android消息推送的Androidpn实现方式:(一)下载androidpn服务器端与客户端的Demo并运行
- leetcode-Merge Intervals
- 利用Intent切换Activity
- [Note]港大-软件工程(Software Engineering)复习笔记
- Android内存优化
- Redis介绍及常用命令
- uva10881-虫虫爬杆
- Android中shape的使用
- 工作日志:201405
- 使用MySql数据库基准压力测试工具mysqlslap重放sql语句