In der Informatik ist ein rekursiver Aufruf der Methode eine Methode, die sich selbst aufruft während des Prozesses der Berechnung . Die Programmiersprache Java unterstützt Rekursion als Teil seiner Programmierung Syntax . Während es vielleicht schwierig für Anfänger Java Programmierer zu begreifen , das Schreiben rekursive Methoden häufig ermöglicht mathematische Konzepte klar im Programm angegeben werden. Aus diesem Grund ist es wichtig, dass Java-Programmierer zu verstehen, wie Rekursion und seine Grenzen zu verwenden. Anleitung
1
fest, ob das Rechenverfahren durchgeführt werden sich eignet, um Rekursion oder nicht. Es ist wichtig, dass der Rechenaufwand in dem Verfahren einer wiederholten Aufruf selbst reduziert werden kann.
Eines der beliebtesten Rekursion Berechnungen ist der Prozess der Bestimmung der Fakultät einer Zahl . Eine Fakultät einer Zahl N ist das Ergebnis der Multiplikation alle Zahlen von 1 bis n sich. Zum Beispiel durch direkte Multiplikation :
Factorial (3) = 3 * 2 * 1 = 6
jedoch das gleiche Ergebnis wird erzielt, wenn angesehen rekursiv :
Factorial ( 3) = 3 * Fakultät (2) = 3 * 2 * Fakultät (1) = 3 * 2 * 1 = 6
Beachten Sie, dass jeder nachfolgende Schritt dem gleichen Verfahren , aber in einfacheren Worten bezieht .
Seite 2
deklarieren Java-Methode , die die rekursive Berechnung durchführen würde . Verfahren in der Regel mindestens die Modifizierungsmittel , die Rückkehr -Typ, die Methode Namen und der entsprechende Parameter -Liste. Der Methodenname beginnt normalerweise mit einem kleinen verbalen Wort . Beispielsweise definiert die folgende Zeile eine Methode namens "fact ()" akzeptiert , dass eine ganze Reihe von n und gibt ihre Fakultät :
int Tatsache (int n ) {}
3
sicher, dass in dem Körper der rekursiven Methode der Berechnung , indem eine Verbindung zu sich selbst durchgeführt wird. Stellen Sie sicher, dass es eine Abbruchbedingung der rekursiven Aufruf als auch, sonst wird das Verfahren auf unbestimmte Zeit laufen , ohne anzuhalten. Beispielsweise berechnet die folgende Zeile die factoria einer bestimmten Anzahl n durch sukzessives , die sich selbst um die gleiche Berechnung mit einer einfacheren Wert von n-1 .
Int Tatsache (int n ) {
< p durchführen > int result ;
if ( n == 1) return 1;
result = fact (n -1) * n;
return result ;
< p> }
n-1 gleich 1 ist , wird der Wert 1 zurückgeführt . Dies ist die Abbruchbedingung der rekursiven Berechnung .
4
Rufen Sie die rekursive Methode, um es zu testen. Beispielsweise ruft die folgende Zeile die Methode "fact ()" , während er einen Wert von 3 auf der Konsole ausgegeben :
System.out.println (" Fakultät von 3 ist " + f.fact ( 3) );
Sie sicher, dass die Meldung ' Fakultät von 3 ist 6' auf dem Bildschirm wird gedruckt
.