Leetcode57. Insert Interval
来源:互联网 发布:软件开发 外包 杭州 编辑:程序博客网 时间:2024/05/01 01:59
57. Insert Interval(插入区间)
Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if necessary).
You may assume that the intervals were initially sorted according to their start times.
Example 1:
Given intervals [1,3],[6,9]
, insert and merge [2,5]
in as [1,5],[6,9]
.
Example 2:
Given [1,2],[3,5],[6,7],[8,10],[12,16]
, insert and merge [4,9]
in as [1,2],[3,10],[12,16]
.
This is because the new interval [4,9]
overlaps with [3,5],[6,7],[8,10]
.
vector<Interval> insert(vector<Interval>& intervals, Interval newInterval) {
vector<Interval> ret;
if(intervals.empty())
{
ret.push_back(newInterval);
return ret;
}
int i = 0;
while(i < intervals.size())
{
//添加的区间与已知区间没有重叠区间
if(newInterval.end < intervals[i].start)
{
ret.push_back(newInterval);
while(i < intervals.size())
{
ret.push_back(intervals[i]);
i ++;
}
return ret;
}
else if(newInterval.start > intervals[i].end)
ret.push_back(intervals[i]);
//有重叠区间
else
{
newInterval.start = min(newInterval.start, intervals[i].start);
newInterval.end = max(newInterval.end, intervals[i].end);
}
i ++;
}
ret.push_back(newInterval);
return ret;
}
- Leetcode57 Insert Interval
- [Java]LeetCode57 Insert Interval
- Leetcode57. Insert Interval
- LeetCode57 Insert Interval
- LeetCode57——Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Insert Interval
- Android第二天
- 2-1 求整数均值
- 洛谷p1280尼克的方案
- 留白篇
- 杭电-6180
- Leetcode57. Insert Interval
- python之验证用户输入
- JavaMail发送邮件
- 2-2 阶梯电价
- MySQL: 基于 Android 远程连接
- IO流,关于File类的一些;以及输入输出流 整理
- Ubuntu16.04 下Matlab2014a安装教程
- 【数据结构和算法】Day 3
- html常用标签