Найти пересечение множеств - C#
Формулировка задачи:
Есть:
List<long> list1 и List<long> list2.
Надо сделать список, где будут общие элементы, которые входят как в 1-й, так и во 2-й.
.NET 2.0
Enumerable.Intersect - не предлагать)
Спасибо!
Лучше никак?
List<long> list1;
List<long> list2;
List<long> list3 = new List<long>();
foreach (long l1 in list1)
{
if (list2.Contains(l1))
{
list3.Add(l1);
}
}Решение задачи: «Найти пересечение множеств»
textual
Листинг программы
var list1 = new List<long>(); var list2 = new List<long>(); var list3 = new List<long>(); var hash = new HashSet<long>(list2); foreach (var x in list1) if (hash.Contains(x)) list3.Add(x);