Lernpfad:Rekursion in Java/Aufrufstapel

Aus Informatik-Box
Zur Navigation springen Zur Suche springen

Der Aufrufstapel

Aufrufstapel der Methode Fakultät.

Intern werden die Methodenaufrufe einer rekursiven Methode auf einem Stapel gespeichert. Die Methoden, die ganz oben auf dem Stapel liegen, werden zuerst abgearbeitet. Danach wird das Resultat der Methode verwendet, um die darunterliegenden Methoden zu berechnen.

Der Quelltext für die Methode fakultät erzeugt den rechts dargestellten Aufrufstapel.

public int fakultät (int n){
  if (n < 2){
    return 1;
  }else{
    return n*fakultät (n-1);
  }
}
Icon Heft.png
Arbeitsauftrag
Die Methode z Ergänze den Aufrufstapel für z(5) .
public int z(x) {
  if (x > 1){
    return x + z(x - 2);
  }else{
    return 1;
  }
}
z(1) 1
z(3)
z(5) z(5) z(5) z(5) 5+4=9
Lösung
z(1) 1
z(3) z(3) 3+1=4
z(5) z(5) z(5) z(5) 5+4=9