56. Merge Intervals
来源:互联网 发布:radeon pro 580windows 编辑:程序博客网 时间:2024/05/18 20:36
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].
思路:此题个人感觉需要先排序,然后在循环中判断当前区间和下一区间之间的关系,可以分为四种情况:
当前区间为first,下一区间为second
- fisrt.start == second.start && first.end <= second.end—-此时合并两个区间
- fisrt.start <= second.start && first.end >= second.end—-当前区间包含下一区间,则进入下一次循环
- first.end >= second.end,合并两个区间
- 跳出循环
struct Interval { int start; int end; Interval() : start(0), end(0) {} Interval(int s, int e) : start(s), end(e) {}};vector<Interval> merge(vector<Interval>& intervals) { if (intervals.size() <= 1)return intervals; vector<Interval> res; sort(intervals.begin(), intervals.end(), [](const Interval& s1, const Interval& s2){return s1.start < s2.start; }); int k = 0; while (k < intervals.size()){ Interval temp = intervals[k]; k++; while (k < intervals.size()){ if (temp.start == intervals[k].start && temp.end <= intervals[k].end){ temp.end = intervals[k].end; k++; } else if (temp.start <= intervals[k].start && temp.end >= intervals[k].end){ k++; continue; } else if (temp.end >= intervals[k].start){ temp.end = intervals[k].end; k++; } else break; } res.push_back(temp); } return res;}
阅读全文
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
- 移动开发----平板电脑或者小屏幕设备
- 剑指offer——新增面试题
- BZOJ 1087-互不侵犯King(状压DP)
- 算法作业:证明题(2)-- 8.8
- 使用标准输出流(system.out)和打印流 (PrintWriter)来读取txt文件
- 56. Merge Intervals
- hdu 1166 敌兵布阵(cdq分治)
- EditText 动态设置inputtype为小数
- 2017.7.04 学习记录 Servler
- Redis 命令参考
- python入门技巧之特征分析(连续特征(图))
- 移动开发----自定义带有字体的文本
- 达晨创投合伙人 傅忠红:从人和事两方面去考察项目
- 【转载】Lua中的四种遍历方式