gpt4 book ai didi

c# - 检测重叠周期的算法

转载 作者:IT王子 更新时间:2023-10-29 03:27:51 24 4
gpt4 key购买 nike

<分区>

我必须检测两个时间段是否重叠。
每个期间都有开始日期和结束日期。
我需要检测我的第一个时间段 (A) 是否与另一个时间段 (B/C) 重叠。
就我而言,如果 B 的开头等于 A 的结尾,则它们不重叠(反之亦然)
我发现了以下情况:

enter image description here

所以实际上我是这样做的:

tStartA < tStartB && tStartB < tEndA //For case 1
OR
tStartA < tEndB && tEndB <= tEndA //For case 2
OR
tStartB < tStartA && tEndB > tEndA //For case 3

(案例4在案例1或案例2的账户中)

有效,但似乎效率不高。

因此,首先,C# 中是否有一个现有类可以对此(时间段)进行建模,类似于时间跨度,但具有固定的开始日期。

其次:是否已经有可以处理此问题的 c# 代码(如 DateTime 类中的代码)?

第三:如果不是,您采用什么方法可以最快地进行这种比较?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com