时间为 datetime 对象。 start_time1 , end_time1 和 start_time2 , end_time2 判断这 2 个时间段是否有交集有什么好的方法吗?我只会用 if 按照条件判断,感觉很笨重。 请教各位 V 友!
时间为 datetime 对象。 start_time1 , end_time1 和 start_time2 , end_time2 判断这 2 个时间段是否有交集有什么好的方法吗?我只会用 if 按照条件判断,感觉很笨重。 请教各位 V 友!
|
zhjitsAug 22, 2017
1
start_time1 < start_time2 < end_time1 or start_time2 < start_time1 < end_time2
|
|
autoxbcAug 22, 2017
2
无交集
start_time1 < end_time2 || start_time2 < end_time1 有交集 上面取反 |
|
4
max(start1, start2)<min(end1, end2)就相交了
|
|
am241Aug 22, 2017 via Android
5
(s2-e1)*(s1-e2) < 0
|
|
blankmeAug 23, 2017
8
记两组数据为(x1, x2) (y1, y2)
它们有交集的条件是: arctan(y2/x1) > 1 && arctan(y1/x2) < 1 |
|
10
好奇为啥没人说是 S 2 -E1 <0
|
|
wisejAug 23, 2017
11
设 a 为 各个活动持续时间之和
设 b 为 max(E1,E2,...,EN) - min(S1,S2,...,SN) 如果 a > b,说明有交集 |