Что является самым быстрым (и наименее ресурсоемким) для сравнения двух массивных ( > 50 000 элементов) и, как результат, имеют два списка, как показано ниже:
- элементы, которые отображаются в первом списке, но не во втором
- которые отображаются во втором списке, но не в первом
В настоящее время я работаю со списком или IReadOnlyCollection и решая эту проблему в запросе linq:
var list1 = list.Where(i => !list2.Contains(i)).ToList();
var list2 = list2.Where(i => !list.Contains(i)).ToList();
Но это не так хорошо, как хотелось бы. Любая идея сделать это быстрее и менее ресурсоемкой, поскольку мне нужно обработать много списков?