C#

Как можно найти одинаковые элементы массива? С#

У меня есть 3 массива: a,b,result.в начале result = a.Как можно найти одинаковые элементы массива, типо a = 1,1,2,2. b = 2. то result.Remove(b[i])(будет ли так удалять все элементы 2?);Вот часть кода:
public static int[] ArrayDiff(int[] a, int[] b)
{
List result = new List();
result = a.ToList();
foreach(int i in b)
{
if(//Че тут написать?)
{
result.Remove(b[i]);
Console.WriteLine($"Удалили все элементы со значением: {b[i]} ");
}
}
return result.ToArray();
}
иди тоже почитай https://www.youtube.com/watch?v=IF7YRBokJAw
Юрий Филёв
Юрий Филёв
20 993
Лучший ответ
Три-щ Котов! Я же уже дал абсолютно универсальное решение для любых массивов, элементы которых реализуют интерфейс IEquatable. Повторяю для особо альтернативно одаренных:

static T[] ArrayDiff< T >(T[] a1, T[] a2) where T : IEquatable< T >
{
List< T > Result = a1.ToList();
foreach (T x in a2)
Result.RemoveAll(y => y.Equals(x));
return Result.ToArray();
}
Сергей Петров А что такое Т? и тут тут функция наследует что то, а нужно чтобы было просто public static int ArrayDiff()
Не совсем понятно что вам нужно, но вот пример удаления дубликатов из списка.

using System;
using System.Collections.Generic;
using System.Linq;
namespace Answer {
class Program {
static void Main() {
var list = new List<int>() {
1, 7, 6, 3, 2, 1, 5, 4, 6, 9, 2, 5, 8, 7, 1
};
foreach (var x in list) Console.Write($" {x} ");
Console.WriteLine();
var result = list.Distinct().ToList();
foreach (var x in result) Console.Write($" {x} ");
Console.WriteLine();
Console.ReadKey();
}
}
}
Remove удалит первое вхождение. это мы запомнили

есть массив А и массив В
нужно образовать третий массив С, в котором будет пересечение А и В?

1. определим в каком из этих двух массивов больше элементов
2. начинаем перебирать меньший массив:
берем из него элемент и проверяем, есть ли он в другом массиве (исходном)
если такой элемент там есть, то проверим, нет ли этого элемента еще в результирующем массиве.
если нет, то запишем его туда
и так пересматриваем все элементы массива, который поменьше

и не исключено, что итоговый массив может оказать пуст
AE
Ando-9988 Ericyan
15 423