Merge Intervals
原题链接Merge Intervals
合并所有有重叠的间隔
对于两个间隔interval1
和interval2
,二者有重叠的情况为
interva1
全部包含interval2
,也就是说interval1.start <= interval2.start && interval1.end >= interval2.end
。例如[2, 3]
和[1, 5]
interval2
全部包含interval1
,同上。例如[1, 5]
和[2, 3]
interval1
和interval2
有交集,且interval1.start <= interval2.start
。例如[1, 3]
和[2, 4]
interval1
和interval2
有交集,且interval1.start >= interval2.start
。例如[2, 4]
和[1, 3]
所以,为了减少情况,首先应该确保interval1
一定在interval2
左边,也就是确保interval1.start <= interval2.start
。那么就需要将原间隔集合根据间隔的开始位置排序
但是此时仍然有三种情况需要讨论,但是,可以反过来考虑,即二者没有重叠的情况为
- 前