我想項目的多個列表合併成一個列表,保留了整體訂單的要求。即:算法 - 合併多個名單,導致獨特的名單和保持秩序
1: A C E
2: D E
3: B A D
result: B A C D E
以上
,從列表1,我們有ACE,我們後來才知道Ë之前d一定要來,並從清單3中,我們知道,B必須走過了面前,d一定要來B之後和
如果有衝突的排序,應該使用A.第一排序。即
1: A C E
2: B D E
3: F D B
result: A C F B D E
3與2(B D對D B)衝突,因此將使用2的要求。
如果訂購要求意味着一個項目一定要來之前或之後另一個,如果它之前或之後馬上來臨的時候,或者在開始或列表的末尾,只要總的排序保持沒關係。
這是使用VB.Net開發的,所以LINQy解決方案(或任何.Net解決方案)會很好 - 否則指針的方法會很好。
編輯:編輯來讓例子2有意義(最後一分鐘的變化已經使得它無效)
爲什麼在第二個例子中衝突的排序?在我看來,'C B F D E'滿足所有的排序...... – 2010-04-28 09:05:26