Einzelnen Beitrag anzeigen

dezz

Registriert seit: 11. Feb 2005
5 Beiträge
 
#1

Rechenzeit stoppen

  Alt 11. Feb 2005, 20:49
Hallo,

ich bearbeite ein Projekt zu Sortierverfahren mit Delphi. Um diese dann auf Geschwindigkeit und Effizienz zu vergleichen, muss ich die Zeit stoppen koennen, die der Algorithmus braucht um eine Liste mit n Elementen zu sortieren.

Als Beispiel habe ich folgenden Sortieralgorithmus: Sortieren durch direkte Auswahl:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i,j,hilf,platz,kleinste:integer;
begin
timer.Enabled:=true;

for i:=1 to 99999 do
begin
kleinste:=f[i];
platz:=i;
   for j:=i to 100000 do
    begin
      if f[j]<kleinste then
        begin
          kleinste:=f[j];
          platz:=j;

        end;
    end;
   hilf:=f[i];
   f[i]:=f[platz];
   f[platz]:=hilf;


end;
timer.enabled:=false;
listbox1.Items.clear;
for i:=1 to 100000 do
  listbox1.items.add(inttostr(f[i]));


end;
nicht ueber die grossen Zahlen wundern, nur zum Test genommen damit es auch ne weile dauert *g*

Mit Hilfe des Timers wollte ich die Zeit festhalten die der Algo braucht, nur scheinbar wird das OnTimer Event nicht aufgerufen.

Kann mir jemand sagen wie ich dies mit dem Timer realisieren kann oder ob es eine bessere Moeglichkeit gibt die Zeit des Algo zu stoppen?

danke mfg dezz
  Mit Zitat antworten Zitat