Thema: Delphi Arbeiten mit TTreeView

Einzelnen Beitrag anzeigen

Martin W

Registriert seit: 29. Mai 2004
Ort: Augsburg
220 Beiträge
 
Delphi XE3 Enterprise
 
#7

AW: Arbeiten mit TTreeView

  Alt 8. Jan 2016, 23:27
Wenn wir schon dabei sind... Habe ich mal eine Funktion geschrieben, um die Duplikate rauszubekommen aus dem TStringDynArray. Funktioniert zwar, wirkt aber doch arg zweckentfremdet Geht das eleganter bei gleicher Performance?

Delphi-Quellcode:
function TfoPersistentModeller.RemoveDuplicateTags(
  const aTags: TStringDynArray): TStringDynArray;
var
  i,k: integer;
  varTagDict: TDictionary<string, string>;
begin

  k := 0;

  varTagDict := TDictionary<string, string>.Create(Length(aTags));

  for i := 0 to length(aTags)-1 do
    begin
      if varTagDict.ContainsKey(aTags[i]) then Continue;
      varTagDict.Add(aTags[i], '');
      inc(k);
      setlength(Result, k);
      Result[k-1] := aTags[i];
    end;

  varTagDict.Free;
      
end;
Mal abgesehen von den klassischen zwei Schleifen-Lösung des Problems...

Geändert von Martin W ( 8. Jan 2016 um 23:30 Uhr)
  Mit Zitat antworten Zitat