32再帰

/ *
*需要:5の階乗
!= 4 * 5 * 5 * 3 * 1 * 2; 120 //
!* 4 * 5 = 120; //
!* 4 * 4 = 24 3; //!
!3 * 2 * 3 = 6; //!
* 2 * 1 = 2 2;!!//
* 1 = 1 ;! // 1


n個!= N *(N - 1)!

再帰:大きな問題は、多くの小さな問題、小さな問題に分割し、その後、より小さな問題に分割され
、我々はより多くの小さな問題を入れたときに解決するだけでなく、小さな問題解決するために
解決の小さな問題、との大きな問題とはそれが解決し
、独自のメソッド連続メソッド呼び出し自体を

再帰注:
再帰をエクスポートする必要があり、メモリオーバーフロー
再帰数はあまりすべきではない、メモリオーバーフロー

公共ボイドショー(int型N){// 5
//出口
場合(N == 0){
返します。
}

ショー(N - 1)。
}
* /

 

パブリック クラスjiecheng {
     公共 静的 ボイドメイン(文字列[]引数){
         int型の結果= JIEC(5 )。
        System.out.println(結果)。
    } 

    パブリック 静的 INT JIEC(INT N){
         場合(N == 1 ){
             返す 1 ; // 出口 
        } {
             戻り N * JIEC(N-1 ) // N!= N *(N-1)!
        } 
    } 
}

輸出

 

 

/ *
*クラシック問題:出産後の最初の3ヶ月からウサギのペアは、各月のウサギのペアを1つ生まれた
ウサギが死んでいない場合、月は、ウサギの一組を出産した後*バニーは、第三の月に育ちます、
*どのくらいあるウサギ番号の2番目の10ヶ月を頼みますか?
*
*
* 1
* 1
* 2
* 3
* 5
* 8
* 13
*
*法則:最初の月に加えて第二月、残りの2ヶ月の月前には、合計である
列の*フィボナッチ数
*
* /

パブリック クラスDEMO2 {
     公共 静的 ボイドメイン(文字列[]引数){
         int型の結果=法(20 )。
        System.out.println(結果)。
    } 

    // 兔子数量多少对
    パブリック 静的 int型のメソッド(int型N){
      場合(N == 1 ){
          返す 1 
     } そう であれば(N == 2 ){
          リターン 1 
     } {
          戻り方法(N-1)+方法(N-2)。//そうでない場合には第一及び第二ヶ月、ウサギの数は、前の二ヶ月の合計です
     } 
    } 
}

輸出

 

おすすめ

転載: www.cnblogs.com/longesang/p/11304575.html