435. Non-overlapping Intervals
来源:互联网 发布:福州网络电视台 编辑:程序博客网 时间:2024/06/03 14:09
要想删除最少,就相当于找到 最多组不相交的区间
每次选取时,只有三种情况:
若后面的区间与此区间不相交(touching也算不相交),则当前区间可选择,并把考察目标转向后面那个区间。
若后面的包含在当前区间内,则考察目标转向后面的那个区间。
若后面的与当前区间相交,则仍考察当前区间。且对比的区间看后面那个。
/** * 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: int eraseOverlapIntervals(vector<Interval>& intervals) { sort(intervals.begin(), intervals.end(), [](const Interval &i1, const Interval &i2){ return i1.start < i2.start; }); int total = 0; int i = 0; int j = 1; while(i + j < intervals.size()){ Interval cur = intervals[i]; Interval next = intervals[i + j]; if (next.start >= cur.end){ total++; i = i + j; j = 1; }else if (cur.end >= next.end){ i = i + j; j = 1; }else if (cur.end < next.end) j++; } if (i + j == intervals.size()) total++; // for(int i = 0; i < intervals.size();){ // Interval cur = intervals[i]; // Interval next = intervals[i + 1]; // if has next // if (next.start >= cur.end){ // total++; // cur = next; // }else if (cur.end >= next.end) // cur = next; // } return intervals.size() - total; }};
阅读全文
0 0
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- 435. Non-overlapping Intervals
- LeetCode 435. Non-overlapping Intervals
- leetcode 435. Non-overlapping Intervals
- [Leetcode] 435. Non-overlapping Intervals
- 【LeetCode】 435. Non-overlapping Intervals
- Leetcode 435. Non-overlapping Intervals
- LeetCode 435. Non-overlapping Intervals
- [GAN 专栏-01]GAN&DCGAN
- Linux用户和用户组管理
- 如何上传安装包到服务器
- 数据挖掘十大经典算法
- hdu 1730 Northcott Game
- 435. Non-overlapping Intervals
- 随便写的一点东西
- jQuerydiv点击添加或者移除样式实现导航切换效果
- jekins增加多个构建过程
- git上发布自己的静态网页
- 企鹅号被扣分了怎么办?喜大普奔!企鹅号信用分可以恢复了
- lsof 确认某个文件是否有被打开
- Nifi Docker集群-两个节点(3)
- Android实现步进式录像进度条