![]() |
Türme von Hanoi (rekursiv)
Hey!
Gab es bestimmt schon tausende Male hier im Forum, jedoch hab ich es in der Codelibrary nicht gefunden, ich denke, es fehlt dort. //Edit: Dies ist die rekursive Variante ;)
Delphi-Quellcode:
Das ganze ist geschrieben nach dem Pseudocode von
program tower_of_hanoi;
{$apptype console} uses sysutils, classes, windows; const sep='----------'; var n:integer; s:string; sl:tstringlist; time:integer; procedure bewege(n,movefrom,moveto,using:integer); begin if n>0 then begin bewege(N-1,movefrom,using,moveto); sl.Add('bewege '+inttostr(movefrom)+' --> '+inttostr(moveto)); bewege(N-1,using,moveto,movefrom); end end; procedure askhanoi; begin writeln('anzahl der scheiben = ?'); readln(n); writeln('berechne...'); time:=gettickcount; bewege(n,1,3,2); time:=gettickcount-time; writeln('zeit: '+floattostr(time/1000)+' s'); writeln('speichern? (y/n)'); readln(s); if s='y' then sl.savetofile('hanoi.txt'); sl.clear; writeln; writeln(sep); writeln; askhanoi; end; begin writeln('turm von bewege'); writeln(sep); writeln('by raw'); writeln('mail: [email]rawsoulstar@gmail.com[/email]'); writeln(sep); writeln; sl:=tstringlist.create; askhanoi; sl.free; end. ![]() Bin natürlich für jeden Tipp dankbar - vor allem bezüglich der Geschwindigkeit ;) LG, Frank. |
Re: Türme von Hanoi (rekursiv)
wie wäre es, wenn du die TStringList wieder frei gibst am ende?
|
Re: Türme von Hanoi (rekursiv)
Liste der Anhänge anzeigen (Anzahl: 1)
Ich hab das früher mal in der Schule mit Grafischer Ausgabe programmiert... fall es zum verständnis beiträgt hab ichs mal mit dran gehängt, ist ebenfalls die rekursive Variante. (vielleicht nicht soooo sauber programmiert) ;)
|
Re: Türme von Hanoi (rekursiv)
Die Stringlist wird nun wieder freigegeben und beim erneuten Aufruf geleert...
Sehe leider keinen Anhang alleinherrscher, hast du dich vielleicht verklickt? //Edit: Grad war er noch nicht da... Sorry <.< |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:51 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