Merge Intervals
来源:互联网 发布:mac os x 系统升级 编辑:程序博客网 时间:2024/05/21 16: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]
.
/** * 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 compare(const Interval &a, const Interval &b) { return a.start < b.start; } vector<Interval> merge(vector<Interval>& intervals) { vector<Interval> result; int size = intervals.size(); if (size < 1) { return result; } sort(intervals.begin(), intervals.end(), compare); Interval temp(intervals[0].start, intervals[0].end); for (int i = 1; i < size; i++) { if (temp.end >= intervals[i].start) { temp.end = max(temp.end, intervals[i].end); } else { result.push_back(temp); temp.start = intervals[i].start; temp.end = intervals[i].end; } } result.push_back(temp); return result; }};
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
- 蒙特卡罗算法解决两集合相等问题
- 快速排序算法
- JavaScript:数组中的一些方法
- hello world
- Java--面向对象之继承与多态
- Merge Intervals
- [NOI2012]骑行川藏(拉格朗日乘数法)
- 并列3个div
- ios uitableview里点击界面退出键盘的实现
- 微次元学习笔记-Build篇
- 利用 C++ 11 特性实现多线程计数器
- 启程互联网架构梦
- stack vs heap
- Android 之 startActivityForResult