11
Université Abou Bakr Belkaid
Faculté des Sciences
Département d’informatique
Algorithmique Avancée et Complexité
Chap2:Complexité et Optimalité
RSD-GL
2015-2016
22
Notation de Landau:
•On ne s ’intéresse pas en général à la complexité
exacte, mais à son ordre de grandeur.
Analyse de la complexité
 
)()(,,,: 210,210 ngcnfngcnnccngf
3
Type de complexité
T(n) = Ө(1), temps constant : temps d’exécution indépendant de la taille
des données à traiter.
T(n) = Ө(log(n)), temps logarithmique : on rencontre généralement une
telle complexité lorsque l’algorithme casse un gros problème en plusieurs petits,
T(n) = Ө(n), Complexité linéaire : cette complexité est généralement obtenue
lorsqu’un travail en temps constant est effectué sur chaque donnée en entrée.
T(n) = Ө(n.log(n)) : Complexité linearithmique l’algorithme scinde le problème en
plusieurs sous-problèmes plus petits qui sont résolus de manière indépendante. La
résolution de l’ensemble de ces problèmes plus petits apporte la solution du problème initial.
T(n) = Ө(n²), Complexité quadratique :
T(n)=Ө(n3) Complexité cubique
T(n) = Ө(2n), Complexité exponentiel
4
Exemple Calcul du factoriel
Algorithme Trivial : T(n)=n-1 T(n)=Ө(n)
C’est une Complexité linéaire
Algorithme Binaire: [log2 n] ≤T(n) ≤2[log2 n].T(n)=Ө(Log(n))
C’est une complexité logarithmique
Analyse de la complexité
5
Règles générales :
1. le temps d’exécution (t.e.) d’une affectation ou d’un test
est considéré comme constant.
2. Le temps d’une séquence d’instructions est la somme des
des instructions qui la composent.
3. le temps d’un branchement conditionnel est égal au t.e. du
test plus le max des deux t.e. correspondant aux deux
alternatives (dans le cas d’un temps max).
4. Le temps d’une boucle est égal à la somme du coût du test
+ du corps de la boucle + test de sortie de boucle.
Analyse de la complexité
1 / 15 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!