C# 递归判断时间段是否重复
时间: 2023-07-12 11:51:15 浏览: 104
好的,以下是一个 C# 的递归函数,用于判断指定时间段是否与已有时间段重复:
```csharp
// 定义时间段类
public class TimeRange
{
public DateTime Start { get; set; }
public DateTime End { get; set; }
}
// 定义递归函数
public bool IsTimeRangeOverlapping(List<TimeRange> timeRanges, TimeRange newTimeRange)
{
// 遍历每个时间段
foreach (var timeRange in timeRanges)
{
// 判断两个时间段是否重复
if (newTimeRange.Start < timeRange.End && newTimeRange.End > timeRange.Start)
{
return true; // 有重复,返回 true
}
}
// 递归判断下一个时间段
return false;
}
```
这个函数接收两个参数,一个是已有的时间段列表,另一个是需要判断的新时间段。函数遍历每个时间段,判断是否与新时间段重复。如果有重复,返回 true;如果没有重复,则递归调用函数,继续判断下一个时间段。最终返回 false,表示新时间段没有与已有时间段重复。
希望这个函数可以帮助您。如果您有具体的实现问题,可以再告诉我,我会尽我所能地帮助您。
阅读全文