Complexité d’un algorithme
Alexandre Benoit
BCPST
2 / 18
I Coût d’un algorithme
3 / 18
Un premier exemple
Pour traiter un même problème, il existe souvent plusieurs algorithmes.
Pour décider quel algorithme choisir, l’un des critères est celui du temps
d’exécution, qu’on appelle aussi coût de l’algorithme.
Exemple
def d i v i s e u r s ( n ) :
L = [ ]
f o r ii n r a n ge ( 1 , n+1) :
i f n % i == 0 :
L . append ( i )
return L
À quoi sert cet algorithme ?
Combien de calculs de restes et de divisions euclidiennes, combien de
comparaisons, combien d’affichages effectue cet algorithme ?
4 / 18
Une alternative à cet algorithme
Exemple
im po rt math
def d i v i s e u r s 2 ( n ) :
r a c i n e = i n t ( math . s q r t ( n ) )+1
L = [ ]
f o r ii n ra nge ( 1 , r a c i n e ) :
i f n % i == 0 :
L . append ( i )
d i v i s e u r = n // i
i f d i v i s e u r != i :
L . append ( d i v i s e u r )
return L
À quoi sert cet algorithme ?
Combien de calculs de restes et de divisions euclidiennes, combien de
comparaisons, combien d’affichages effectue cet algorithme
5 / 18
Exercice
Si le premier algorithme avec comme entrée ns’exécute en 10
secondes, en combien de secondes s’exécutera-t’il avec en entrée
100n?
Même question avec le second algorithme.
1 / 18 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !