Universit´e Bordeaux 2 Licence MASS/Scico 5`eme semestre (2006/2007)
Algorithmes et structures de donn´ees : TD 5 Corrig´e
Temps d’un algorithme T(n) - Notation Grand-O
Exercice 5.1 Temps d’un algorithme T(n)
Pour chacun des fonctions Ti(n) suivant, d´eterminer sa complexit´e asymptotique dans la
notation Grand-O. Exemple : T0(n) = 3n∈O(n).
1. T1(n) = 6n3+ 10n2+ 5n+ 2 ∈O(n3)
2. T2(n) = 3 log2n+ 4 ∈O(log n)
3. T3(n) = 2n+ 6n2+ 7n∈O(2n)∈O(an)
4. T4(n) = 7k+ 2 ∈O(1)
5. T4(n) = 4 log2n+n∈O(n)
6. T5(n) = 2 log10 k+kn2∈O(n2)
Exercice 5.2 Temps d’un algorithme T(n)
Consid´erer les deux algorithmes A1 et A2 avec leurs temps d’ex´ecution T1(n) = 9n2et
T2(n) = 100n+ 96 respectives.
1. D´eterminer la complexit´e asymptotique des deux algorithmes dans la notation Grand-O.
Quel algorithme a la meilleure complexit´e asymptotique?
•T1(n) = 9n2∈O(n2)
•T2(n) = 100n+ 96 ∈O(n)
C’est l’algorithme A2 qui a la meilleure complexit´e asymptotique.
2. Montrer que vos solutions sont correctes en sp´ecifiant un cet un n0par algorithme afin
que la relation suivante soit satisfaite :
O(f) = {g|∃c > 0 : ∃n0>0 : ∀n≥n0:g(n)≤cf (n)}
A1 p.ex. c= 10 et n0= 1 pour f(n) = O(n2) et g(n) = T1(n) = 9n2car ∀n≥1 : T1(n)≤
10n2
A2 p.ex. c= 101 et n0= 100 pour f(n) = O(n) et g(n) = T2(n) = 100n+ 96 car ∀n≥100 :
T2(n)≤101n
Remarque : Bien sur, il y a d’autres choix possibles pour cet n0
3. Calculer les temps maximales d’ex´ecution des deux algorithmes Ti(n) pour n= 1, n =
3, n = 5, n = 10, n = 14.
nT1T2
1 9 196
381 396
5225 596
10 900 1096
14 1764 1496