11. RekursionenMethoden können sich selbst aufrufen, Methoden von Klassen können Objekte derselben Klasse definieren: es handelt sich um selbstbezügliche Konstruktionen. Im Allgemeinen sind rekursive Programme sehr elegant, aber relativ zeitaufwendig. Ich werde dies an Hand von vier Beispielen sehr kurz erkäutern. 11.1 Fakultät n!Basierend auf static long Fak(long n){ if (n==0) return 1; else return n*Fak(n-1); }//Ende Fak 11.2 Fibonacci-ZahlenEs gilt die Rekursion static long Fibonacci(int n){ if (n<=1) return n; else return Fibonacci(n-1)+Fibonacci(n-2); } 11.3 Turm von Hanoistatic void Hanoi(int n, String a, String b, String c){ //uebertraegt n Scheiben von a nach b mit Hilfe von c if (n>0){ Hanoi(n-1,a,c,b); System.out.println("Scheibe von "+a+" nach "+b); Hanoi(n-1, c, b, a); }//Ende if }//Ende Hanoi() 11.4 n-te Ableitung einer FunktionBeruhend auf der Definition, dass die n-te Ableitung einer Funktion
die erste Ableitung der (n-1)-ten Ableitung dieser Funktion ist, kann
man die Methode
Hier wird im Methodenblock von - Ende des Kurses -
|
![]() ![]() |
Impressum | 2009-03-14, wwwmath (WL) |