Skip to content

Commit 1ab92e5

Browse files
committed
完善“区间合并”内容
1 parent 15adb5c commit 1ab92e5

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

docs/0000-04-merge-intervals.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,15 @@
44

55
区间合并模式是一个用来处理有区间重叠的很高效的技术。在涉及到区间的很多问题中,通常咱们需要要么判断是否有重叠,要么合并区间,如果他们重叠的话。这个模式是这么起作用的。
66

7-
给两个区间,一个是 a,另外一个是 b。别小看就两个区间,他们之间的关系能跑出来6种情况。详细的就看图啦。
7+
给两个区间,一个是 a,另外一个是 b。别小看就两个区间,他们之间的关系能跑出来6种情况。详情如图:
88

99
image::images/0056-01.png[{image_attr}]
1010

11+
观察这六种排序,明显后三种排序是前三种排序的一个“变种”:对区间根据起点和终点进行排序,就是剩下前三种排序了。再对其进行合并就很简单了:
12+
13+
. 没有重叠,则直接开启新区间。
14+
. 有重叠,起点和终点分别取最大值和最小值即可:由于区间已经排序,则相邻两个区间的起点是前面区间的起点,重点则是两个区间终点的最大值。
15+
1116
怎么识别啥时候用合并区间模式呀?
1217

1318
* 当你需要产生一堆相互之间没有交集的区间的时候

0 commit comments

Comments
 (0)