フィボナッチ数のように,複数の再帰呼び出しを必要とするロジックなら素直にループで書こう.
private static void fib( int max ) { int total = 0; int prev1 = 0; int prev2 = 1; for( int i = 0;i < max;i++ ) { if( i == 0 ) prev1 = 0; else if( i == 1 ) prev2 = 1; else { prev2 = prev1; prev1 = total; } total = prev1 + prev2; } System.out.println( total ); }
0 件のコメント:
コメントを投稿