zeig doch mal her, wie sortierst du die tlist?
persönlich hab ich keine ahnung was du mit den vielen dateien oder tlist alles machst und im speicher braucht man das ja auch nicht behalten. du brauchst ja nur einmal deine datei durchzugehen, dir die jeweils besten werte merken und das ergebnis ausgeben... das sollt recht schnell gehen. im pseudocode sieht das in etwa so aus
Code:
öffne quelldatei;
while not eof(quelldatei) do
begin
lese datensatz(quelldatei) und positioniere auf nächsten satz;
bereite datensatz auf;
prüfe ob datensatz im buffer
wenn ja dann
prüfe ob datensatz besser als der im buffer
wenn nicht dann
nimm neue daten in buffer auf;
wenn nicht im buffer dann
nehme datensatz in den buffer auf;//an der richtigen stelle
end;
schliesse quelldatei;
der buffer muss natürlich sortiert sein, am besten baust du dir dafür einen binary tree auf, wo du sehr schnell auf die einzelnen elemente zugeifen kannst. alternativ, gings auch mit 'ner TList ist aber nicht optimal. hier musst gehirnschmalz investieren, damit tlist beim einfügen an einer bestimmten stelle nicht jedesmal den speicher umschichtet und du die sanduhr zu sehen bekommst.
<HTH>