Die Fibonacci -Sequenz, auch bekannt als die Goldene Segmentierungssequenz, Faktor Mathematiker Leonardoda Fibonacci [1]) wurde als Beispiel mit einer Kaninchenzüchtung eingeführt, sodass sie auch als "Rabbit -Sequenz" bezeichnet wird, die sich auf eine Sequenz bezieht: 0, 1, 1, 3, 5, 5, 8, 13, 21, 34, 34, ... in der Mathematik. F (0) = 0, f (1) = 1, f (n) = f (n-1)+f (n-2) (n ≥ 2, n∈N*) in modernen Physik, Quasikristallstruktur, Chemie und anderen Feldern, Fibonacci-Sequenzen haben direkte Anwendungen. Aus diesem Grund hat die American Mathematical Society seit 1963 ein mathematisches Journal namens "Fibonacci Sequence Quarterly" veröffentlicht, um die Forschungsergebnisse in diesem Bereich spezifisch zu veröffentlichen.
Im Folgenden implementieren ich die verschiedenen Möglichkeiten der Rekursion und Nichtrezension in der Java-Sprache:
öffentliche Klasse Feibonacii {// Verwenden Sie rekursive Methoden zur Implementierung von Fibonacci-Sequenzen publikum statische int feibonacci1 (int n) {if (n == 0) {return 0;} if (n == 1) {return 1;} return feibonacci1 (n-1)+feibonacci1 (n-2); } // Nicht rekursive Methoden zur Implementierung von Fibonacci Sequence Public static int feibonacci2 (int n) {int arr [] = new int [n+1]; arr [0] = 0; arr [1] = 1; für (int i = 2; i <= n; i ++) {arr [i] = arr [i-1]+arr [i-2]; } return arr [n]; } public static void main (String [] args) {für (int i = 40; i <= 45; i ++) {System.out.println ("feibonaci1 i ="+i+", vaule ="+feibonaci1 (i)); } für (int i = 40; i <= 45; i ++) {System.out.println ("feibonaci2 i ="+i+", vaule ="+feibonaci2 (i)); }}}Es ist offensichtlich, dass die rekursive Methode 43 nach der Ausführung relativ langsam ausgeführt wird, während die Ausführung der nicht rekursiven Methode ziemlich schnell ist.
analysieren:
(1) Java verwendet Methoden, um die Fibonacci -Sequenz rekursiv zu implementieren. Feibonaci1 (45) wird einmal ausgeführt. Java führt die Methode Feibonaci1 mit 2^44+2^43+...+2^1+1 -mal aus. Feibonaci2 (45), die Methode wird nur einmal ausgeführt, aber die Anzahl der Berechnungen ist die gleiche wie die von Feibonaci1.
Schlussfolgerung: Java beschreibt Fibonacci-Sequenzen, die für die Berechnung unter Verwendung nicht rekursiver Methoden besser geeignet sind.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.