Es kommt halt immer darauf an.
Hier sehe ich aber auch einen Standard-Fall (sind die Elemente in Menge A in der Menge B enthalten), wo es sich lohnt die eigene Bibliothek um diesen Fall zu erweitern.
Wichtig im Hinblick auf die Performance ist die richtige Art durch die Arrays zu iterieren:
langsam
Delphi-Quellcode:
for a in ValuesA do
for b in ValuesB do
if Comparer.Equals( a, b ) then
vs. schnell
Delphi-Quellcode:
for idxA := Low( ValuesA ) to High( ValuesA ) do
for idxB := Low( ValuesB ) to High( ValuesB ) do
if Comparer.Equals( ValuesA[idxA], ValuesB[idxB] );
denn im letzteren müssen keine Werte kopiert werden.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)