Liebe Leute,
ich habe eine Liste mit mehr als 7 Mio Einträgen (Strings/einzelne Wörter), die ich gerne gruppieren und zählen würde.
Derzeit habe ich das mit einer Stringlist realisiert:
Delphi-Quellcode:
Procedure GruppiereZaehleListe(Quellliste, Ziellist: tstringlist);
var
i: integer;
CurIndex: integer;
begin
for i:= 0 to Quellliste.count-1 do
begin
CurIndex := Ziellist.IndexOf(Quellliste[i]);
if CurIndex >= 0 then
Ziellist.Objects[CurIndex] := TObject(Succ(Integer(Ziellist.Objects[CurIndex])))
else
Ziellist.AddObject(Quellliste[i], TObject(1));
end;
end;
Mein Problem: Das ist VIEL zu langsam. Gibt es irgendeine Möglichkeit, den Code zu optimieren oder eine Alternative zu TStringlist, die einfach schneller arbeitet?
- Habe nur D5 zur Verfügung (ich weiß, alt).
Danke und beste Grüße,
frieder