[LeetCode]Merge Intervals
2015-04-24 09:46
176 查看
Given a collection of intervals, merge all overlapping intervals.
For example,
Given
return
思路:首先对元素进行排序,按照start升序排序。然后依次合并。
但是代码运行时间略长600ms。暂时没想到更好的解法。
LeetCode Source
代码如下:
For example,
Given
[1,3],[2,6],[8,10],[15,18],
return
[1,6],[8,10],[15,18].
思路:首先对元素进行排序,按照start升序排序。然后依次合并。
但是代码运行时间略长600ms。暂时没想到更好的解法。
LeetCode Source
代码如下:
/** * 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: vector<Interval> merge(vector<Interval>& intervals) { if(intervals.size()==0) return intervals; sort(intervals.begin(),intervals.end(), [](const Interval&a,const Interval&b){return a.start<b.start;}); vector<Interval> ret; ret.push_back(intervals[0]); for(auto i=1;i<intervals.size();++i){ Interval &temp = ret.back(); if(temp.end>=intervals[i].start){ if(temp.end<=intervals[i].end) temp.end = intervals[i].end; } else{ ret.push_back(intervals[i]); } } return ret; } };
相关文章推荐
- leetcode: Merge Intervals
- [leetcode]Merge Intervals
- Merge Intervals(LeetCode)
- [Leetcode]Merge Intervals
- LeetCode--Merge Intervals
- [LeetCode] Merge Intervals
- LeetCode—Merge Intervals
- [LeetCode]Merge Intervals
- Leetcode 56 Merge Intervals
- [Leetcode]Merge Intervals
- Merge Intervals - leetcode 56号题目个人题解
- [LeetCode] Merge Intervals
- LeetCode_OJ【56】Merge Intervals
- LeetCode-56-Merge Intervals(C语言实现)
- leetcode -- Merge Intervals -- 典型trick
- leetcode merge intervals
- [LeetCode] Merge Intervals
- leetcode:Merge Intervals
- Leetcode: Merge Intervals
- LeetCode--Merge Intervals