Lernpfad:Rekursion in Java/Aufrufbaum: Unterschied zwischen den Versionen

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „==Der Aufrufbaum== thumb|right|Das pascal'sche Dreieck Durch einen Aufrufbaum wird die schrittweise Lösung eines Problem…“)
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
==Der Aufrufbaum==
{{Navigation}}
[[Datei:PascalTriangleAnimated2.gif|thumb|right|Das pascal'sche Dreieck]]
== Der Aufrufbaum ==
Durch einen Aufrufbaum wird die schrittweise Lösung eines Problems dargestellt. Im Aufrufbaum werden die Parameter und die Rückgaben der Methode visualisiert. Gerade bei Methoden mit mehreren rekursiven Aufrufen verdeutlicht der Aufrufbaum die Ausführung.  
Durch einen Aufrufbaum wird die schrittweise Lösung eines Problems dargestellt. Im Aufrufbaum werden die ''Parameter'' und die ''Rückgaben'' der Methode visualisiert. Gerade bei Methoden mit mehreren rekursiven Aufrufen verdeutlicht der Aufrufbaum die Ausführung.  


Das pascalsche Dreieck kann rekursiv berechnet werden, die jeweils oberhalb liegenden Felder werden addiert und ergeben das untere Feld.
[[Datei:PascalTriangleAnimated2.gif|frame|right|Visualisierung des Pascalschen Dreiecks.]]
Das [[wikipedia:Pascalsches Dreieck|Pascalsche Dreieck]] kann rekursiv berechnet werden, die jeweils oberhalb liegenden Felder werden addiert und ergeben das darunter liegende Feld.


Der untere Aufrufbaum verdeutlicht die Berechnungen, die für die vierte Zeile und die dritte Spalte des pascal'schen Dreiecks benötigt werden:
Der untere Aufrufbaum verdeutlicht die Berechnungen, die für die vierte Zeile und die dritte Spalte des Pascalschen Dreiecks benötigt werden:
[[Datei:02_Rekursion_Aufrufbaum_Pascalsche_Dreieck.PNG|02_Rekursion_Aufrufbaum_Pascalsche_Dreieck.PNG]]
[[Datei:02_Rekursion_Aufrufbaum_Pascalsche_Dreieck.PNG|02_Rekursion_Aufrufbaum_Pascalsche_Dreieck.PNG]]


Zeile 11: Zeile 12:
Eine Fibonacci-Zahl wird durch die Summe der zwei vorherigen Fibonacci-Zahlen gebildet.  
Eine Fibonacci-Zahl wird durch die Summe der zwei vorherigen Fibonacci-Zahlen gebildet.  


*Mathematisch ausgedrückt:  
Mathematisch ausgedrückt:  
** f(n) = f(n-2)+f(n-1) für n>1,
* <math>f(n) = f(n-2)+f(n-1)</math> für <math>n>1</math>
** f(n) = n für n<2
* <math>f(n) = n</math> für <math>n<2</math>


Notieren Sie den Aufrufbaum des Methodenaufrufs f(4).
Notieren Sie den Aufrufbaum des Methodenaufrufs f(4).

Version vom 2. Januar 2019, 13:48 Uhr

Der Aufrufbaum

Durch einen Aufrufbaum wird die schrittweise Lösung eines Problems dargestellt. Im Aufrufbaum werden die Parameter und die Rückgaben der Methode visualisiert. Gerade bei Methoden mit mehreren rekursiven Aufrufen verdeutlicht der Aufrufbaum die Ausführung.

Visualisierung des Pascalschen Dreiecks.

Das Pascalsche Dreieck kann rekursiv berechnet werden, die jeweils oberhalb liegenden Felder werden addiert und ergeben das darunter liegende Feld.

Der untere Aufrufbaum verdeutlicht die Berechnungen, die für die vierte Zeile und die dritte Spalte des Pascalschen Dreiecks benötigt werden: 02_Rekursion_Aufrufbaum_Pascalsche_Dreieck.PNG

Icon Heft.png
Arbeitsauftrag

Eine Fibonacci-Zahl wird durch die Summe der zwei vorherigen Fibonacci-Zahlen gebildet.

Mathematisch ausgedrückt:

  • [math]\displaystyle{ f(n) = f(n-2)+f(n-1) }[/math] für [math]\displaystyle{ n\gt 1 }[/math]
  • [math]\displaystyle{ f(n) = n }[/math] für [math]\displaystyle{ n\lt 2 }[/math]

Notieren Sie den Aufrufbaum des Methodenaufrufs f(4).

public int f(n) {
  if (n > 1){
    return f(n-2) + f(n-1);
  }else{
    return n;
  }
}
Lösung

03 Rekursion Aufrufbaum fib loesung.PNG