List1: {"123456", "432978", "321675", …} // containing 100,000 members
List2: {"7674543897", "1234568897", "8899776644",…} // containing 500,000 members
我想提取列表2的所有項目,他們的前6位是從列表1的成員,所以這裏字符串「1234568897」是有效的,因爲它的前6位數字是來自List1的第一個項目。 這樣做的最快方法是什麼?快速路
foreach(string id in List1)
{
string result = List2.FirstOrDefault(x => x.Contains(id));
if(result!=null)
{
//some works here
}
}
這個工程的一組小於1000,但是當列表2項增長這個時間太長
你已經試過了什麼?你到目前爲止的嘗試中設置了什麼時機機制和測試? – 2013-03-06 11:50:55
與一個foreach循環,這需要5分鐘給出結果。我已經嘗試過:List2.FirstOrDefault(x => x.Contains(id))和th id放在foreach循環中迭代List1中的所有項目。 – 2013-03-06 11:56:32