Senior
Hogyan lehet eltávolítani a duplikátumokat egy tömbből? Milyen módszerek vannak?
sobes.tech MI
Válasz az MI-től
C#-ban többféle módon lehet eltávolítani a duplikátumokat egy tömbből:
- Használja a LINQ
Distinct()metódusát:
int[] array = {1, 2, 2, 3, 4, 4, 5};
var distinctArray = array.Distinct().ToArray();
- Használja a
HashSet<T>-t, amely automatikusan csak az egyedi elemeket tárolja:
int[] array = {1, 2, 2, 3, 4, 4, 5};
var set = new HashSet<int>(array);
int[] distinctArray = set.ToArray();
-
Komplex objektumok esetén megvalósíthatja az
IEqualityComparer<T>-t, és használhatja aDistinct()vagy aHashSet-tel. -
Ha rendezésre és duplikátumok eltávolítására van szükség, rendezze a tömböt, majd ciklussal végigmenve válassza ki az egyedi elemeket.
A LINQ Distinct() a legegyszerűbb és legolvasmányosabb módszer a legtöbb esetben.