用Linq取兩個陣列的差集

2022-07-21 13:42:19 字數 594 閱讀 1766

兩個陣列,取其差集,用linq做比較方便,效率也比較高,具體如下示例

有兩個陣列list1 和list2 ,如下

listlist1 = new list();

list1.add(1);

list1.add(2);

list1.add(3);

listlist2 = new list();

list2.add(1);

list2.add(2);

list2.add(3);

list2.add(4);

list2.add(5);

然後做差集計算

listlist3 = list2.except(list1).tolist();

此時的list3就是  包含在list2中的元素 但不包含在 list1中的元素,一句話搞定。

當然,linq還可以取交集,並集

交集的關鍵字:intersect   

如:listlist3 = list2.intersect(list1).tolist();

並集的關鍵字:union

如:listlist3 = list2.union(list1).tolist();

計算兩個陣列的差集

給你兩個分別有 5000 個元素的陣列,計算他們的差集 方案1迴圈第乙個陣列 判斷item是否在第二個陣列裡,如果在,則unset掉這個鍵,最後剩下的陣列就是差集 function array diff array 1,array 2 return array 1 方案2 最優 效率最快 將第二個陣...

js取陣列兩個陣列的交集 差集 並集 補集 去重

each是乙個集合迭代函式,它接受乙個函式作為引數和一組可選的引數 這個迭代函式依次將集合的每乙個元素和可選引數用函式進行計算,並將計算得的結果集返回 var b 1,2,3,4 each function x alert a alert b script param fn 進行迭代判定的函式 pa...

兩個List取差集

兩個物件list,直接比較是不行的,因為他們存的位址不一樣 需要重寫gethashcode 與equals object obj 方法告訴電腦 public class model public string name public override intgethashcode public ov...