Einzelnen Beitrag anzeigen

Benutzerbild von CK_CK
CK_CK

Registriert seit: 31. Aug 2005
Ort: Dortmund, Germany
388 Beiträge
 
Delphi 2006 Enterprise
 
#3

Re: Schnelle einführung in die Rekursion gesucht

  Alt 6. Mär 2007, 16:08
Hi!
Also, was Rekursion ist weißt du ja bestimmt schon...
(Eine Prozedur ruft sich selbst wieder auf...)

Eine typische rekursive Aufgabe ist (neben der Fakultät) z.B. der Quicksort-Algorithmus...
Delphi-Quellcode:
procedure QuickSort(var A: array of Integer; iLo, iHi: Integer);
var
  Lo, Hi, Mid, T: Integer;
begin
  Lo := iLo;
  Hi := iHi;
  Mid := A[(Lo + Hi) div 2];
  repeat
    while A[Lo] < Mid do Inc(Lo);
    while A[Hi] > Mid do Dec(Hi);
    if Lo <= Hi then
    begin
      T := A[Lo];
      A[Lo] := A[Hi];
      A[Hi] := T;
      Inc(Lo);
      Dec(Hi);
    end;
  until Lo > Hi;
  if Hi > iLo then QuickSort(A, iLo, Hi);
  if Lo < iHi then QuickSort(A, Lo, iHi);
end;
Wenn du den verstanden hast, dann wirst du in der Klausur keine Probleme haben...
(Ist schon schwieriger, als der Fakultäts-Algorithmus...)

Viele Grüße,
Chris
Chris
» «
Mehr von mir (Programme, etc.): http://www.kroegerama.de
  Mit Zitat antworten Zitat