例题分析一
LeetCode 第 56 题:给出一个区间的集合,请合并所有重叠的区间。
示例 1
输入: [[1,3], [2,6], [8,10], [15,18]]
输出: [[1,6], [8,10], [15,18]]
解释: 区间 [1,3] 和 [2,6] 重叠,将它们合并为 [1,6]。
示例 2
输入: [[1,4], [4,5]]
输出: [[1,5]]
解释: 区间 [1,4] 和 [4,5] 可被视为重叠区间。
解题思路:贪婪法
在分析一些比较复杂的问题时,可以从比较简单的情况着手来寻找突破口,先来看看两个区间会出现多少种情况。
假设有区间 a 和 b,区间 a 的起始时间要早于 b 的起始时间。那么它们之间有如下 3 种可能会出现的情况。