对于区间类的问题,整体思路都是在某个维度进行排序之后,用贪心算法在每一步做出最优的选择。
435. Non-overlapping Intervals
给定一串区间,求最少删除多少个可以使不重复;
Input: [ [1,2], [2,3], [3,4], [1,3] ]
Output: 1
Explanation: [1,3] can be removed and the rest of intervals are non-overlapping.
思路很好理解,第一步根据start排序;
接下来我们遍历这个数组,我们用一个指针来记录我们保留的最后一个区间,对于新的区间,如果和这个最后一个区间产生了相交,那么我们必然只能保留一个,这里的贪心选择就是:我们期望为后面的区间保留更多的可利用空间,所以我们总是选择那个结束最早的区间。