3
刪除項目我有兩個字符串數組從字符串數組
string[] a = ...
string[] b = ...
我想刪除從任何物品也存在於B或只有那些只存在於一個項目將返回一個新的數組。
因此,舉例來說,如果
a={"a", "b", "c"};
,並
b={"b"}
那麼結果應該是
{"a", "c"}
有一個整潔的lambda表達式或LINQ或東西我可以用來做到這一點?
感謝,
薩欽
也請參閱MSDN頁除外:http://msdn.microsoft.com/en-us/library/bb300779.aspx – 2012-02-16 14:40:38
正確的,雖然那性能是O(N×M個),即。二次。如果'a'非常大並且'b'包含很多項目,請考慮使用HashSet:'var hashA = new HashSet(a); hashA.ExceptWith(b)中;返回a.ToArray();'這是線性的。如果'a'很小,則不需要優化。 –
Andreas
2012-02-16 14:49:19
爲什麼我無法將源類型'System.Collections.Generic.IEnumerable轉換爲目標類型字符串[]'? –
2012-02-16 14:52:25