この記事の例は、Javaの原則を分析しています。あなたの参照のために全員のためにそれを共有してください。特定の分析は次のとおりです。
説明:独自のプログラミングスキルを呼び出すプログラムは、再帰と呼ばれます。
独自のプログラミングスキルを呼び出すプログラムは、再帰と呼ばれます。アルゴリズムとしての再帰は、プログラミング言語で広く使用されています。 1つのプロセスには、定義または指示において直接的または間接的に呼び出される方法があります問題解決プロセスに必要な複数の繰り返し計算を説明するために、プログラムのコードを大幅に削減します。再発する能力は、限られた文のオブジェクトの無制限のコレクションを定義することです。
再帰の3つの条件:
境界条件の再帰的な高度なセグメントは、境界条件が満たされていない場合、境界条件が満たされている場合、再帰的なリターン。
次の2つのサンプルプログラムについて説明します。
Javaコードを使用して注文5を見つけます。 (5*4*3*2*の5つのステップ)
/*** 5(result = 5*4*3*2*1)*@著者pplsunny ****/public class test01 {public static void main(string [] args){system.out.prin tln( tln(f(5));} public static int f(int n){if(1 == n)return 1(n-1);}}
この質問では、再帰の3つの条件に従って分析します。
(1)境界条件:ステップ乗数、つまり、1が1を返すと、プログラムの実行が最後まで実行されます。
(2)再帰フロントセクション:現在のパラメーターが1に等しくない場合、引き続き自分自身を呼び出します。
(3)再帰返品セクション:現在のパラメーターが5の場合、最大数から開始します。
Javaコードを使用して番号を見つけます:1、1、2、3、5、8 ...... 40番目の番号
/ ** *シーク番号:1,1,2,3,5,8 ... 40番目の番号 * @author pplsunny * */ public class test_fibonacci {public static void main(string [] args){system.out。 println(f(f(6));} public static int f(int n){if(1 == n || 2 == n)return 1; elsen return f(n-) + f(n-2) ;}}
この質問のブレークスルーは、3桁目から始まると、数値は最初の2桁の合計です。数値の値を計算するには、パラメーターとして数値を計算する必要があります。
(1)まず第一に、数字の数が1と2の場合、返される現在の値は1でなければなりません。
(2)次に、数字の数が3の場合、戻り値は= 2 = 1+1でなければなりません。
数値が4の場合、戻り値= 3 = 2+1;
数字が5の場合、戻り値= 5 = 3+2;
数値が6の場合、返品値= 8 = 5+3;
... ...
(3)(2)から、それが3以上の場合、現在のデジタル(n)= f(n-1)+f(n-2)の値がわかった場合、
経験:一部の初心者は、再帰が自分自身を呼ぶことだと考えるかもしれませんが、それはデッドサイクルではないでしょう。はい、再帰的な文章が不合理である場合、それは死のサイクルです。ただし、執筆が合理的であり、「境界条件」である場合、プログラムが最後まで実行されると、レイヤーごとに戻ります。山に登るのと同じように、山の頂上なしで層を登るために山道を登ります。しかし、山の頂上に着いたら、山を上るときに階段を下りてください。
この記事がすべての人のJavaプログラムのデザインに役立つことが期待されています。