在日期列表中找到最小的时期

find the smallest period in list of dates

有没有办法在日期列表中找到最小的时间段:

A: startDate|----------------------|EndDate
B: startDate|------------|EndDate
C: startDate|-----------------|EndDate

本例中周期最小的是B。 我需要一个想法才能开始

计算时间差得到一个timeSpans序列,并选择最小的一个。例如使用 LINQ

var shortestPeriod = myDates.Min(d => d.startDate - s.EndDate);

如果您想要最短间隔的实际开始和结束日期,您可以使用 MinBy,对于早于 6 的 .Net 版本,它在 MoreLinq 库中可用,或者您可以自己编写。