leetcode -- Merge Intervals
2014-08-15 20:03
288 查看
关键不是怎么想,而是怎么做
[问题描述]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].
[解题思路]
排序 + 比较
bool cmp_Interval(Interval a, Interval b) { return a.start == b.start?(a.end < b.end):(a.start < b.start); } class Solution { public: vector<Interval> merge(vector<Interval> &intervals) { std::vector<Interval> ans; if (intervals.size() == 0) return ans; std::sort(intervals.begin(), intervals.end(), cmp_Interval); ans.push_back(intervals[0]); for (int i = 0; i < intervals.size(); i ++){ if (ans[ans.size() - 1].end >= intervals[i].start) ans[ans.size() - 1].end = std::max(ans[ans.size() - 1].end, intervals[i].end); else ans.push_back(intervals[i] ); } return ans; } };
相关文章推荐
- leetcode——Merge Intervals
- leetcode--Merge Intervals
- 【LeetCode】-Merge Intervals
- [LeetCode] Merge Intervals
- 【LeetCode】Merge Intervals
- [LeetCode][Java] Merge Intervals
- LeetCode 56 Merge Intervals
- [LeetCode] Merge Interval系列,题:Insert Interval,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]56 Merge Intervals
- [LeetCode]Merge Intervals
- leetcode Merge Intervals
- LeetCode56——Merge Intervals