AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dictionary statt binärer Suche?

Ein Thema von stahli · begonnen am 7. Aug 2015 · letzter Beitrag vom 16. Dez 2015
Antwort Antwort
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#1

AW: Dictionary statt binärer Suche?

  Alt 15. Dez 2015, 10:46
Ja, ich glaube auch dass es eher so sein müsste:
Delphi-Quellcode:
uses
  System.SysUtils,
  System.Generics.Collections,
  System.Diagnostics;

var
  lDict: TObjectDictionary<Integer, TObject>;
  lSw : TStopwatch;
  I : Integer;
begin
  lDict := TObjectDictionary<Integer, TObject>.Create( [ doOwnsValues ] );
  try
    lSw := TStopwatch.StartNew;
    I := 0;
    while I < 1000000 do
    // Der Aufruf von Count macht ca 50% der Laufzeit aus.
    // while lDict.Count < 1000000 do
    begin
      Inc(I);
      lDict.Add( I, TObject.Create);
    end;
    lSw.Stop;
  finally
    lDict.Free;
  end;

  writeln( lSw.ElapsedMilliseconds.ToString( ) );
  Readln;
end.
Ändert aber nichts am eigentlichen Problem mit der Laufzeit. Ich denke @Stahli misst Mist
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all

Geändert von Union (15. Dez 2015 um 10:48 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.358 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Dictionary statt binärer Suche?

  Alt 15. Dez 2015, 11:32
Ich denke @Stahli misst Mist
Das verbitte ich mir!
Die Zeiten messe ich schon richtig.

In Tausender-Schritten braucht der Import jeweils unter 1 Sekunde (da wird jeweils noch ein wenig mehr getan als nur ein Create).
Zweimal dauert es aber deutlich länger:
bei 197.000: (00:00:25)
bei 394.000: (00:02:55)


Es liegt offenbar wirklich daran, dass der Hashwert ungünstig ermittelt wird.

Da ich es aber nicht besser weiß und mit einer Liste ohnehin besser zurecht komme, bleibe ich bei der Liste und bin zufrieden.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#3

AW: Dictionary statt binärer Suche?

  Alt 15. Dez 2015, 11:36
Genauso wie eine Waschmaschine kein Toaster ist, obwohl beide einen Stromanschluss haben, eine Öffnung um etwas hineinzustecken und einen Schalter zum einschalten.
Bist du dir da ganz sicher?
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Dictionary statt binärer Suche?

  Alt 15. Dez 2015, 11:43
Genauso wie eine Waschmaschine kein Toaster ist, obwohl beide einen Stromanschluss haben, eine Öffnung um etwas hineinzustecken und einen Schalter zum einschalten.
Bist du dir da ganz sicher?
Ja, merkt man dann, wenn man morgens schon Schaum vor dem Mund hat
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz