Fibonacci : 2 appels Récursifs
Bonjour ,
Lors d' un appel du méthode récursif , on a besoin d' un cas qui permet d'arreter la méthode récursif et c' est a ce moment que se réalise le désempilement.
Mais dans le cas du calcul de la suite de Fibonacci , il y a 2 appels recursif:
[CODE]public static int Finorec(int n ){
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
int resultat;
System.out.println ("Entrée 1 , n = " + n );
if (n ==0 || n== 1) {
resultat = 1;
}else {
System.out.println ("Entrée 2 , n = " + n );
resultat = Finorec (n-1) + Finorec (n-2);
System.out.println ("Sortie 2 , n = " + n + " resultat = " + resultat);
}
System.out.println ("Sortie 1, n = " + n + " resultat = " + resultat );
return resultat; |
Autant avec factorielle en récursif , j' avais compris le fonctionnement , mais ici comment cela se passe t il?J' ai mis des traces pour essayer d' en comprendre le cheminement.
Une fois qu il rencontre le premier appel recursif Finorec (n-1)comment fait il pour le 2 eme appel récursif?
merci