Einzelnen Beitrag anzeigen

Phantom1

Registriert seit: 20. Jun 2003
282 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Funktion schneller machen?

  Alt 2. Mär 2006, 23:43
Das Problem bei deinem Algorithmus ist das du zuoft IndexOfName verwendest, diese Methode durchsucht die Stringliste jedesmal von vorne!

Probier es mal so hier:
Delphi-Quellcode:
  for i := 0 to LISTE2.Count-1 do
  begin
    for j := LISTE1.Count-1 downto 0 do begin
      if AnsiUpperCase(LISTE2[i])=AnsiUpperCase(Copy(LISTE1[j], 1, Length(LISTE2[i]))) then begin
        //schreibe zugehörigen WERT in andere Liste
        LISTE1.Delete(j);
      end;
    end;
  end;
  Mit Zitat antworten Zitat