两个时间(日期)段交集判断方法

本文介绍了一个简单的时间段交集问题解决方法。在一个已有的活动时间范围内,如何判断新增活动是否会与原有活动发生时间上的冲突。通过遍历已有活动并使用条件判断的方式,可以有效地找出是否有交集,并计算出具体的交集时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前两天遇到一个时间段交集的问题。在一个时间段内只能举行一次活动,需要判断活动时间范围是否已经存在了活动,然后我列出了下面这个表达式

------------------------原活动时间------------------------------
时间段a
开始a1
结束a1

时间段b
开始b1
结束b2

时间段c
开始c1
结束c2

------------------------------------------------------

List<date> activityList=new List<date>{a,b,c}

新活动发布时间

时间段n
开始n1
结束n2

foreach (var item in activityList)
{
  //时间段n与时间段item的交集出现在 n2>= item1 && n1<= item2 的时候n与item相交

  if( n2>= item1 && n1<= item2) 

  {

    //相交时间,开始时间取大值,结束时间取小值    

 

  }

}

 整理一下,还是挺简单的。

转载于:https://www.cnblogs.com/hewei2954/p/6610663.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值