la limite L existe elle satisfait L = 1 +1/L. Cette ´equation nous montre de plus
que pour tout N, Fibonacci(N)/Fibonacci(N-1) >1.
Il nous reste `a montrer que Fibonacci(N)/Fibonacci(N-1) converge. En
posant f(x) = 1+1/x, on a que Fibonacci(N)/Fibonacci(N-1) -Φ = f(Fibonacci(N-
1)/Fibonacci(N-2)) -f(Φ). La formule des accroissements fini nous indique donc
qu’il existe c dans [min{Fibonacci(N-1)/Fibonacci(N-2), Φ}, max{Fibonacci(N-
1)/Fibonacci(N-2), Φ}] tel que :
f(Fibonacci(N-1)/Fibonacci(N-2)) -f(Φ) = f’(c)((Fibonacci(N-1)/Fibonacci(N-
2)-Φ).
Comme f0(x) = −1/x2et que c > 1, on a que 0 <|f0(c)|<1. Ainsi :
|Fibonacci(N)/Fibonacci(N-1) −Φ| ≤ A|(Fibonacci(N-1)/Fibonacci(N-2) −Φ)|,
avec A < 1. De l`a, |Fibonacci(N)/Fibonacci(N-1) −Φ| ≤ AN−2|1−Φ|et donc
Fibonacci(N)/Fibonacci(N-1) converge bien vers Φ.
Cette convergence nous permet ensuite de conclure que Fibonacci(N) est
´equivalent `a ΦN. Le nombre d’appel `a Fibonacci est donc en O(Φn).
2.4
Conclusion ?
Un nombre d’appel exponentiel, c’est trop ! L’algorithme propos´e n’est
pas un bon algorithme pour calculer la suite de Fibonacci. La raison en est
que beaucoup beaucoup de choses sont calcul´ees plusieurs fois. Par exemple
Fibonacci(N-2) est calcul´ee pour Fibonacci(N) et pour Fibonacci(N-1).
Il faut trouver un moyen de ne calculer les choses qu’une et une seule fois.
2.5
Proposez un algorithme it´eratif calculant la suite de Fibonacci, et
donner en sa complexit´e.
La complexit´e est en O(N). Ce qui n’a rien `a voire avec O(Φn).
3 Trop Poly pour ˆetre honnˆete
On repr´esente un polynˆome P(x) = a0+P1≤i≤naixide degr´e npar un tableau
tab de taille n+ 1 tel que tab[i]=ai(0 ≤i≤n).
3.1
Proposez un algorithme permettant de calculer la somme de deux
polynˆomes P(x)et Q(x)de mˆeme degr´e n. Quel est sa complexit´e ?
La complexit´e de cet algorithme est clairement en O(n).
3.2
Proposez un algorithme permettant de calculer le produit de deux
polynˆomes P(x)et Q(x)de mˆeme degr´e n. Quel est sa complexit´e ?
5