zum einen würde ich Dir für das Suchen die Binäre Suche empfehlen, zum anderen, wenn ich das richtig gesehen habe, dann fügst Du nicht vorhandene Datensätze ein, wie wäre es dann mit:
Delphi-Quellcode:
zielliste.Sorted:=true;
zielliste.Duplicates:=Dupignore;
{not found}
zielliste.add(quellliste[i]);
Gruß
K-H