Hallo
C.Schoch,
sind beide Listen gleich gross? Wenn die Listen sortiert vorliegen, bietet sich eine binäre Suche an. Und könnte man vielleicht bei einem Fund diesen aus der
DestList löschen, um sie zu verkleinern?
Delphi-Quellcode:
var i:integer;
abbruch:boolean;
begin
i:=0;
abbruch:=false;
while (i < SourceList.Count) and not abbruch do begin
if not Terminated then
begin
iFindResult := DestList.IndexOf(SourceList.Strings[i]);
if iFindResult <> -1 then
begin
DestList.Delete(iFindResult);
// Zu einer dritten Liste hinzufügen
end;
end
else abbruch:=true;
inc(i);
end;
end;
Ausserdem ist dies mal wieder ein schönes Beispiel dafür, dass man kein
break benötigt.
Edit: Nochmal zum Sortieren, teste dochmal wie lange eine Sortierung benötigt.
Gruss
Thorsten