前兩天遇到一個時間段交集的問題。在一個時間段內只能舉行一次活動,需要判斷活動時間范圍是否已經存在了活動,然后我列出了下面這個表達式
------------------------原活動時間------------------------------
時間段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)
{
//相交時間,開始時間取大值,結束時間取小值
}
}
整理一下,還是挺簡單的。
