判断两个时间段交集、时间重叠问题

简介: 判断两个时间段范围是否有交集(时间重叠)问题经常遇到,比如预约会议室开会,活动的开始结束等,本文做此分析。

判断两个时间段范围是否有交集(时间重叠)问题经常遇到,比如预约会议室开会,活动的开始结束等,本文做此分析。

前提:本文时间传参已做限制,结束时间必须大于开始时间

1、正向思维

image.gif

代码如下

(oneStartTime <= otherStartTime && otherStartTime <= oneEndTime) 
|| (oneStartTime <= otherEndTime && otherEndTime <= oneEndTime) 
|| (oneStartTime <= otherStartTime && oneEndTime <= otherEndTime) 
|| (otherStartTime <= oneStartTime && oneEndTime <= otherEndTime)

image.gif

oneStartTime <= otherEndTime && oneEndTime >= otherStartTime

image.gif

2、逆向思维

image.gif代码如下

!(otherEndTime < oneStartTime || otherStartTime > oneEndTime)

image.gif

3、参考链接

1)判断两个时间段范围是否有交集

2)SQL中的时间重叠问题

若本文有帮助到阅读本文的同学,欢迎点赞、关注、收藏,互相学习交流。

目录
相关文章
|
10月前
|
算法 测试技术 C#
C++二分查找算法:包含每个查询的最小区间
C++二分查找算法:包含每个查询的最小区间
|
6月前
|
JavaScript 前端开发
对数组元素出现次数进行统计
该文章介绍了如何使用JavaScript统计数组中每个元素的出现次数,包括通过创建对象和使用`Set`对象去重的方法。
60 2
对数组元素出现次数进行统计
|
9月前
39.组合总和(回溯)
39.组合总和(回溯)
|
10月前
|
Java 测试技术
统计满足条件的子集个数
统计满足条件的子集个数
64 0
|
10月前
|
算法 索引 Python
如何实现二分查找算法? 要求:编写一个Python函数,输入一个有序列表和一个目标值,返回目标值在列表中的索引。如果目标值不在列表中,返回-1。
如何实现二分查找算法? 要求:编写一个Python函数,输入一个有序列表和一个目标值,返回目标值在列表中的索引。如果目标值不在列表中,返回-1。
92 0
|
Python
将列表按照指定的规则排序并添加平均值
将列表按照指定的规则排序并添加平均值
86 1
使用lambda去重、map排序、按任意时间间隔(小时、半小时、分钟)进行结果统计
使用lambda去重、map排序、按任意时间间隔(小时、半小时、分钟)进行结果统计
274 0
|
存储 人工智能 算法
区间分组的解法
区间分组的解法