SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
Enseignants: Dr. Atef MASMOUDI & Dr. Ameur CH’HAYDER
AU: 2015-2016
17/12/2015 1Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
https://www.facebook.com/groups/informatique.prepas
L thé i d l l ité l ith i i à La théorie de la complexité algorithmique vise à:
◦ classer les problèmes selon leur difficulté,
classer les algorithmes selon leur efficacité◦ classer les algorithmes selon leur efficacité,
◦ comparer les algorithmes résolvant un même problème.
Proposer en Python deux programmes différentsProposer en Python deux programmes différents
pour vérifier la primalité d’un entier n?
Proposer en Python deux programmes différents
pour calculer xn?pour calculer xn?
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
2
https://www.facebook.com/groups/informatique.prepas
 Pour mesurer le temps d'exécution d’un programme en
Python nous pouvons simuler un chronomètre :
◦ on le déclenche juste avant le début du programmeon le déclenche juste avant le début du programme,
◦ on l'arrête juste après la fin du programme,
◦ le temps écoulé entre les deux pressions est la durée qui nous
intéresse.
 En Python, on peut simuler un chronomètre grâce au
module time ;
Exemple:
f i i *from time import *
debut = time() # on déclenche le chronomètre
# votre programmeot e p og a e
fin = time() # on arrête le chronomètre
print(’Temps écoulé:’, fin - debut, ’ secondes’)
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
3
https://www.facebook.com/groups/informatique.prepas
Ecrire un programme Python pour vérifier la
i lité d ?primalité de n?
Programme naïf: vérifier si n possède un diviseur dans
l’intervalle [2,n-1]
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 4
https://www.facebook.com/groups/informatique.prepas
Ecrire un programme Python pour vérifier la
primalité de n?primalité de n?
Programme rapide: vérifier si n possède un diviseur dans
l’intervalle [2 n]l intervalle [2,n],
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
5
https://www.facebook.com/groups/informatique.prepas
Ecrire un programme Python pour calculer xn?
Méthode classique:
Xn x*x* *xXn=x*x*………….*x
n foisn fois
17/12/2015
6
Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
https://www.facebook.com/groups/informatique.prepas
Exponentiation rapide
17/12/2015 7Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
https://www.facebook.com/groups/informatique.prepas
D l’ét d d l ité d’ l ithDans l’étude de complexité d’un algorithme on ne mesure pas
la durée en heures, minutes, secondes, ...:
◦ cela impliquerait d'implémenter les algorithmes qu'oncela impliquerait d implémenter les algorithmes qu on
veut comparer ;
◦ de plus, ces mesures ne seraient pas pertinentes car le
même algorithme sera plus rapide sur une machine plus
puissante ;
L’étude de complexité consiste donc à utiliser
des unités de temps abstraites proportionnellesdes unités de temps abstraites proportionnelles
au nombre d'opérations effectuées ;
On pourra par la suite adapter ces quantités enOn pourra par la suite adapter ces quantités en
fonction de la machine sur laquelle l'algorithme
s'exécute ;
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
8
s exécute ;
https://www.facebook.com/groups/informatique.prepas
 La complexité temporelle d'un algorithme
consiste à calculer le nombre d'opérationsconsiste à calculer le nombre d opérations
élémentaires (affectations, comparaisons,
opérations arithmétiques,…) effectuées par unp q , ) p
algorithme.
 Ce nombre s'exprime en fonction de la taille n
des données.
 On s'intéresse:
◦ La complexité au pire: temps d'exécution maximum,
dans le cas le plus défavorable.
◦ La complexité au mieux: temps d'exécution minimumLa complexité au mieux: temps d exécution minimum,
dans le cas le plus favorable.
◦ La complexité moyenne: temps d'exécution dans un cas
édi d t d' é timédian, ou moyenne des temps d'exécution.
 Le plus souvent, on calcule la complexité au pire,
car on veut borner le temps d'exécutioncar on veut borner le temps d exécution
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
9
https://www.facebook.com/groups/informatique.prepas
 Calculer le coût d’un programme revient à calculer le Calculer le coût d un programme revient à calculer le
nombre d’opérations effectuées en fonction de la taille
des données
 Pour déterminer le coût d’un algorithme, on se fonde en
général sur le modèle de complexité suivant :
ff l’é l d’◦ Une affectation, une comparaison ou l’évaluation d’une
expression arithmétique (+,-,/,*,//,%,**) ayant en
général un faible temps d’exécution considéré commegénéral un faible temps d exécution considéré comme
l’unité de mesure du coût d’un algorithme.
◦ Le coût des instructions p et q en séquence est laLe coût des instructions p et q en séquence est la
somme des coûts de l’instruction p et de l’instruction q.
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 10
https://www.facebook.com/groups/informatique.prepas
◦ Le coût d’un test if◦ Le coût d un test if
if b:
p
else:
q
Le coût d’un test est égal au maximum des coûts des instructionsLe coût d’un test est égal au maximum des coûts des instructions
p et q, plus le temps d’évaluation de l’expression b.
◦ Le coût d’une boucle for
for i in range(n):
p
L û d’ b l f é l b d é é i iLe coût d’une boucle for est égal au nombre de répétitions
multiplié par le coût du bloc d’instructions p.
Quand le coût de p dépend de la valeur de i, le coût total de laQ p p ,
boucle est la somme des coûts de p pour chaque valeur de i.
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
11
https://www.facebook.com/groups/informatique.prepas
◦ Le cas d’une boucle while◦ Le cas d une boucle while
while condition:
pp
Le cas d’une boucle while est plus complexe à traiterp p
puisque le nombre de répétitions n’est en général pas
connu a priori.
On peut majorer le coût de l’exécution de la boucle par
l b d é étiti ff t éle nombre de répétitions effectuées.
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
12
https://www.facebook.com/groups/informatique.prepas
 Exemple: Exemple:
◦ Calculer la factorielle d’un entier n
1 affectation
(n-1) itérations
1 affectation + 1 multiplication
1 renvoi
Le coût de l’algorithme = Nombre total d’opérationsLe coût de l algorithme = Nombre total d opérations
1 Affectation + (n-1) *( 1 affectation + 1 multiplication)+1 renvoi
f( ) 1+ ( 1)*2+1 2*
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 13
f(n)=1+ (n-1)*2+1=2*n
https://www.facebook.com/groups/informatique.prepas
 Exemple: Exemple:
◦ Vérifier la primalité d’un entier n
(n-2) itérations
1 reste + 1 comparaison1 reste + 1 comparaison
1 renvoi
1 renvoi
 
f1(n)=(n-2)*2+1
=2n-3
(n-1) itérations
1 reste + 1 comparaison
1 renvoi
1 renvoi
f2(n)=(n-1)*2+1n=2**31-1
f1( ) 4294967293
14
=2*n-1f1(n)= 4294967293
f2(n)= 92679
Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
https://www.facebook.com/groups/informatique.prepas
 Exemple: Calculer xn Exemple: Calculer x
1 affectation
n itérations
1 affectation + 1 multiplication
1 renvoi
f1(n)=1+n*2+1
2 2
1 affectation
(log2(n)) itérations
1 i
=2n+2
1 comparaison
1 reste + 1 comparaison
1 affectation + 1 multiplication
1 affectation + 1 division1 affectation + 1 division
1 affectation + 1 multiplication
1 renvoi
f2(n)=1+ (log2(n)+1) *(1+2+2+2)2
+ (log2(n)+1) *2+1
=9*log2(n)+11
La représentation binaire de n nécessite (log2(n)+1) bits
û l (l ( ) ) b 9 l ( )
15
Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
Le coût maximal sur (log2(n)+1) bits = 9*log2(n)+11
X=3 et n=2**20-1
f1(n)= 2097152 et f2(n)=182
https://www.facebook.com/groups/informatique.prepas
Calculer le coût des programmes suivantsp g
1 affectation
n itérations
1 affectation + 1 addition
1 renvoi
f1(n)=1+n*2+1
2 2=2n+2
1 affectation
n itérations
n itérations
1 affectation + 1 addition
+ 1 multiplication
1 renvoi
f2(n)=1+n*n*3+1
=3n2+2
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 16
https://www.facebook.com/groups/informatique.prepas
Calculer le coût des programmes suivantsp g
1 affectation
n itérations
i itérationsi itérations
1 affectation + 1 addition
+ 1 multiplication
1 renvoi
f1(n)=1+(n*(n+1)/2)*3+1
=(3/2)n2+(3/2)n+2
1 affectation
log2(n)  itérations
1 affectation + 1 multiplication
1 condition
1 condition
1 renvoi
l ( ) 
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 17
f2(n)=1+log2(n) *3+1+1
=3*log2(n) +3
https://www.facebook.com/groups/informatique.prepas
 Généralement, la complexité d'un algorithme
est une mesure de sa performance
asymptotique dans le pire cas ;
 Que signifie ‘asymptotique’ ?
◦ on s'intéresse à des données très grandes ;
 Que signifie ‘dans le pire cas’ ?
◦ on s'intéresse à la performance de l'algorithme dans
les situations où le problème prend le plus de temps.
 Pourquoi ?
ê û◦ pour être sûr que l'algorithme ne prendra jamais plus
de temps que ce qu'on a estimé. Ce qui correspond à
donner une majoration du nombre d’opérationsdonner une majoration du nombre d opérations
effectuées par l’algorithme.
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
18
https://www.facebook.com/groups/informatique.prepas
 On dit que la complexité de l'algorithme est
O(g(n)) ou g est d'habitude une
combinaison de polynômes, logarithmes oup y g
exponentielles.
 Ce qui signifie que le nombre d'opérations Ce qui signifie que le nombre d opérations
effectuées, noté par f(n), est borné par
C*g(n) ou C est une constante lorsque nC g(n), ou C est une constante, lorsque n
tend vers l'infini.
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
19
https://www.facebook.com/groups/informatique.prepas
Si f et g sont deux fonctions positives réelles:
f(n) = O(g(n)) si et seulement si le rapport f/g estf(n) = O(g(n)) si et seulement si le rapport f/g est
borné a l'infini (f est dominée par g):
◦ ∃C>0 ∃n >0 n>n f(n) ≤ C*g(n)◦ ∃C>0, ∃n0>0, n>n0, f(n) ≤ C g(n)
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
20
https://www.facebook.com/groups/informatique.prepas
 La notation O dite notation de Landau vérifie La notation O, dite notation de Landau, vérifie
les propriétés suivantes :
 si f=O(g) et g=O(h) alors f=O(h)
i f O( ) t >0 l *f O( ) si f=O(g) et a>0, alors a*f=O(g)
 si f1=O(g1) et f2=O(g2) alors f1+f2 = O(g1+g2)
f ( ) f ( ) l f f ( ) si f1=O(g1) et f2=O(g2) alors f1*f2 = O(g1*g2)
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 21
https://www.facebook.com/groups/informatique.prepas
Si f et g sont deux fonctions positives réelles:
f(n) = (g(n)) ⇒ g est une borne inférieuref(n) = (g(n)) ⇒ g est une borne inférieure
asymptotique pour f:
◦ ∃C>0 ∃n >0 n>n C*g(n) ≤f(n)◦ ∃C>0, ∃n0>0, n>n0, C g(n) ≤f(n)
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
22
https://www.facebook.com/groups/informatique.prepas
Si f et g sont deux fonctions positives réelles:
 f(n) = Θ(g(n)) ⇒f et g ont le même ordre de grandeur : f(n) = Θ(g(n)) ⇒f et g ont le même ordre de grandeur :
◦ ∃c1,c2>0, ∃n0>0, n>n0, c1*g(n) ≤ f(n) ≤c2*g(n)
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
23
https://www.facebook.com/groups/informatique.prepas
 O(1) : complexité constante, pas d'augmentation du O(1) : complexité constante, pas d augmentation du
temps d'exécution quand le paramètre croit.
◦ Exemple: affectation, comparaison, …
 O(log(n)) : complexité logarithmique augmentation O(log(n)) : complexité logarithmique, augmentation
très faible du temps d'exécution quand le paramètre
croit.
◦ Exemple: conversion du décimal au binaireExemple: conversion du décimal au binaire
 O(n) : complexité linéaire, augmentation linéaire du
temps d'exécution quand le paramètre croit (si le
paramètre double le temps double)paramètre double, le temps double).
◦ Exemple: somme des n premiers entiers naturels
 O(n*log(n)) : complexité quasi-linéaire, augmentation
un peu supérieure a O(n)un peu supérieure a O(n).
 Exemple: calculer la somme des chiffres des n premiers entiers
naturels
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 24
https://www.facebook.com/groups/informatique.prepas
 O(n2) : complexité quadratique, quand le O(n ) : complexité quadratique, quand le
paramètre double, le temps d'exécution est
multiplie par 4.
◦ Exemple : algorithmes avec deux boucles imbriquées◦ Exemple : algorithmes avec deux boucles imbriquées.
 O(ni) : complexité polynomiale, quand le
paramètre double, le temps d'exécution est
lti li 2imultiplie par 2i.
◦ Exemple : algorithme utilisant i boucles imbriquées.
 O(an) : complexité exponentielle, quand le( ) p p , q
paramètre double, le temps d'exécution est élevé
à la puissance 2.
 O(n!) : complexité factorielle asymptotiquement O(n!) : complexité factorielle, asymptotiquement
équivalente à nn
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 25
https://www.facebook.com/groups/informatique.prepas
17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016
26
https://www.facebook.com/groups/informatique.prepas
On suppose qu’on dispose d’un ordinateur capable deOn suppose qu on dispose d un ordinateur capable de
réaliser 109 opérations/seconde
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 27
https://www.facebook.com/groups/informatique.prepas
 Les instructions de base (affectation, comparaison,p
opération arithmétique,) prennent un temps constant,
noté O(1)
 On additionne les complexités d'opérations en séquence :
Instruction p O(f1(n))
I i O(f2( ))Instruction q O(f2(n))
O(f1(n)) + O(f2(n)) = O(f1(n) + f2(n)) =O(max(f1(n), f2(n)))
L b h t diti l Les branchements conditionnels :
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 28
= O(max(f1(n) , f2(n), g(n)))
https://www.facebook.com/groups/informatique.prepas
 La complexité d’une boucle for est égal au nombre d’itérations
multiplié par la complexité de l’instruction p si ce dernier ne
dépend pas de la valeur de i.
O(n*f(n))
 La complexité d’une boucle while:
= O(m*max(g(n) , f(n)))
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 29
https://www.facebook.com/groups/informatique.prepas
 Pour calculer la complexité d'un programme :p p g
1. on calcule la complexité de chaque partie du
programme;
2. on combine ces complexités conformément aux règles
' i d iqu'on vient de voir ;
3. on simplifie le résultat grâce aux règles de
simplifications suivantes:simplifications suivantes:
◦ On remplace les constantes multiplicatives par 1,
◦ On annule les constantes additives ;◦ On annule les constantes additives ;
◦ On conserve le terme dominant.
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 30
https://www.facebook.com/groups/informatique.prepas
Exemple: g(n)=5n3-6n2+4p g
◦ On remplace les constantes multiplicatives par 1,
1n3-1n2+4
◦ On annule les constantes additives ;
◦ 1n3-1n2
◦ On conserve le terme dominant.
◦ n3-n2
l ( ) ( 3)◦ Solution g(n)=O(n3)
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 31
https://www.facebook.com/groups/informatique.prepas
O(1)
n-1 itérations O(n)
O(1)
 La complexité de la fonction:
O(1)
 La complexité de la fonction:
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 32
https://www.facebook.com/groups/informatique.prepas
O(n)
O(n)O(n)
O(n)
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 33
https://www.facebook.com/groups/informatique.prepas
O(log(n))
O(log(n))
O(log(n))
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 34
https://www.facebook.com/groups/informatique.prepas
O(n2)
O(n2)O(n2)
O(n*log(n))
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 35
https://www.facebook.com/groups/informatique.prepas
 Montrez que la complexité de la fonction suivante estq p
quadratique en n, c’est-à-dire en O(n2)
1 affectation
n itérationsn itérations
1 affectation
k itérations
1 affectation + 1 multiplication
1 affectation + 1 addition
+1 division
1 renvoi
f(n)=1+n+2*(n*(n-1)/2)+3*n+1
=n2+3*n+2
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 36
n +3 n+2
https://www.facebook.com/groups/informatique.prepas
 Que fait cette fonction ? calcul de exp(1)
 Donnez une version linéaire de cet algorithme, c’est-à-
dire en O(n)
1 affectation
1 affectation1 affectation
n itérations
1 affectation +1 Multiplication
+ 1 addition
1 affectation + 1 addition
+1 division
1 renvoi
f(n)=2+6*n+1
=6*n+3
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 37
6 n+3
https://www.facebook.com/groups/informatique.prepas
 Complétez le tableau suivant.
Il s’agit de calculer le nombre d’opérations nécessaire
pour exécuter le programme en fonction de sa
Complexité n=10 n=100 n=1000
complexité et de la taille du problème traité
p
n
n2n
n3
2n2
n
log(n)
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 38
log(n)
https://www.facebook.com/groups/informatique.prepas
 Complétez le tableau suivant.
é éIl s’agit de calculer le temps nécessaire pour exécuter
un problème en supposant qu’on dispose d’un
ordinateur capable de réaliser 109 opérations/seconde
Complexité n=10 n=100 n=1000
ordinateur capable de réaliser 109 opérations/seconde
n
n2
n3
2n2
n
log(n)
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 39
log(n)
https://www.facebook.com/groups/informatique.prepas
 Rangez les fonctions suivantes par ordre de Rangez les fonctions suivantes par ordre de
grandeur croissant :
n n*log(n) n log(n) n log2(n) n2 (3/2)n◦ n, n*log(n),n, log(n), n log2(n),n2, (3/2)n,
n10, log2(n)
 Calculer la complexité des programmes:
 Premier et premier_rapide
 Puissance et puissance_rapide
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 40
https://www.facebook.com/groups/informatique.prepas
 Dire si les affirmations suivantes sont vrais Dire si les affirmations suivantes sont vrais
ou fausses:
◦ 2n+3=O(n)◦ 2n+3=O(n)
◦ 2n+log(n)=O(n2)
◦ 2n7+5n4+3n2+1=O(n7)( )
◦ 5n3+3nlog(n)+6n=O(n3)
◦ 3log(n)+2=O(log(n))
◦ 2n+100log(n)=O(log(n))
◦ 2n+2=O(2n)
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 41
https://www.facebook.com/groups/informatique.prepas
 Quelle est la complexité de la fonction Quelle est la complexité de la fonction
suivante:
O(n2log(n))
17/12/2015
Dr. Atef MASMOUDI & Dr. Ameur
CH'HAYDER, IPEIS, AU:2015-2016 42
https://www.facebook.com/groups/informatique.prepas

Contenu connexe

Tendances

Algorithmique et Structures de Données II
Algorithmique et Structures de Données IIAlgorithmique et Structures de Données II
Algorithmique et Structures de Données IIRiadh Bouslimi
 
Chapitre 3 la recherche tabou
Chapitre 3 la recherche tabouChapitre 3 la recherche tabou
Chapitre 3 la recherche tabouAchraf Manaa
 
Chapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régnerChapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régnerSana Aroussi
 
Cours : les listes chainées Prof. KHALIFA MANSOURI
Cours : les listes chainées  Prof. KHALIFA MANSOURI Cours : les listes chainées  Prof. KHALIFA MANSOURI
Cours : les listes chainées Prof. KHALIFA MANSOURI Mansouri Khalifa
 
Chapitre 4 heuristiques et méta heuristiques
Chapitre 4 heuristiques et méta heuristiquesChapitre 4 heuristiques et méta heuristiques
Chapitre 4 heuristiques et méta heuristiquesSana Aroussi
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite completChahrawoods Dmz
 
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).vangogue
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoiresBoris Guarisma
 
Chapitre vi np complétude
Chapitre vi np complétudeChapitre vi np complétude
Chapitre vi np complétudeSana Aroussi
 
Chapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsChapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsSana Aroussi
 
Chapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdfChapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdfMbarkiIsraa
 
Chapitre 1 arbres de recherche
Chapitre 1 arbres de rechercheChapitre 1 arbres de recherche
Chapitre 1 arbres de rechercheSana Aroussi
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximationmohamed_SAYARI
 
Chap4 Récursivité en python
Chap4 Récursivité en pythonChap4 Récursivité en python
Chap4 Récursivité en pythonMariem ZAOUALI
 
La complexité des algorithmes récursives Géométrie algorithmique
La complexité des algorithmes récursivesGéométrie algorithmiqueLa complexité des algorithmes récursivesGéométrie algorithmique
La complexité des algorithmes récursives Géométrie algorithmiqueHajer Trabelsi
 

Tendances (20)

(Cours régression)
(Cours régression)(Cours régression)
(Cours régression)
 
Algorithme knn
Algorithme knnAlgorithme knn
Algorithme knn
 
Algorithmique et Structures de Données II
Algorithmique et Structures de Données IIAlgorithmique et Structures de Données II
Algorithmique et Structures de Données II
 
Chapitre 3 la recherche tabou
Chapitre 3 la recherche tabouChapitre 3 la recherche tabou
Chapitre 3 la recherche tabou
 
Chapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régnerChapitre iii récursivité et paradigme diviser pour régner
Chapitre iii récursivité et paradigme diviser pour régner
 
Knn
KnnKnn
Knn
 
Cours : les listes chainées Prof. KHALIFA MANSOURI
Cours : les listes chainées  Prof. KHALIFA MANSOURI Cours : les listes chainées  Prof. KHALIFA MANSOURI
Cours : les listes chainées Prof. KHALIFA MANSOURI
 
Chapitre 4 heuristiques et méta heuristiques
Chapitre 4 heuristiques et méta heuristiquesChapitre 4 heuristiques et méta heuristiques
Chapitre 4 heuristiques et méta heuristiques
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
Algo tri
Algo triAlgo tri
Algo tri
 
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires
 
Chapitre vi np complétude
Chapitre vi np complétudeChapitre vi np complétude
Chapitre vi np complétude
 
Chapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsChapitre v algorithmes gloutons
Chapitre v algorithmes gloutons
 
Chapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdfChapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdf
 
Chapitre 1 arbres de recherche
Chapitre 1 arbres de rechercheChapitre 1 arbres de recherche
Chapitre 1 arbres de recherche
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximation
 
Chap4 Récursivité en python
Chap4 Récursivité en pythonChap4 Récursivité en python
Chap4 Récursivité en python
 
Chapitre 1 rappel
Chapitre 1   rappelChapitre 1   rappel
Chapitre 1 rappel
 
La complexité des algorithmes récursives Géométrie algorithmique
La complexité des algorithmes récursivesGéométrie algorithmiqueLa complexité des algorithmes récursivesGéométrie algorithmique
La complexité des algorithmes récursives Géométrie algorithmique
 

En vedette

7exercices loi-normale-et-corriges-www.coursdefsjes.com
7exercices loi-normale-et-corriges-www.coursdefsjes.com7exercices loi-normale-et-corriges-www.coursdefsjes.com
7exercices loi-normale-et-corriges-www.coursdefsjes.comrachoo10
 
Intelligence somatique pour coachs et facilitateurs - Fiche pédagogique
Intelligence somatique pour coachs et facilitateurs - Fiche pédagogiqueIntelligence somatique pour coachs et facilitateurs - Fiche pédagogique
Intelligence somatique pour coachs et facilitateurs - Fiche pédagogiqueMaud RABER
 
Algorithmique et programmation michael griffith
Algorithmique et programmation michael griffithAlgorithmique et programmation michael griffith
Algorithmique et programmation michael griffithBernhard Ndale
 
Les homophones grammaticaux
Les homophones grammaticauxLes homophones grammaticaux
Les homophones grammaticauxzeinabdibhammoud
 
Le cryptage et le décryptage
Le cryptage et le décryptageLe cryptage et le décryptage
Le cryptage et le décryptageSKYWARE COMPAGNY
 
Algorithmique au cycle 3
Algorithmique au cycle 3Algorithmique au cycle 3
Algorithmique au cycle 3eduscol
 
TD La fonction logarithme exercices corrigés - SOUFIANE MERABTI
TD La fonction logarithme exercices corrigés -  SOUFIANE MERABTITD La fonction logarithme exercices corrigés -  SOUFIANE MERABTI
TD La fonction logarithme exercices corrigés - SOUFIANE MERABTIsoufiane merabti
 
Merise exercicesmcdcorriges-121007174045-phpapp01
Merise exercicesmcdcorriges-121007174045-phpapp01Merise exercicesmcdcorriges-121007174045-phpapp01
Merise exercicesmcdcorriges-121007174045-phpapp01SaberCraft Zeriguine
 
Chap1 introduction à l'algoritmique
Chap1 introduction à l'algoritmiqueChap1 introduction à l'algoritmique
Chap1 introduction à l'algoritmiqueMohamed Lahby
 
Implémentation des principaux algorithmes de chiffrements en Java
Implémentation des principaux algorithmes de chiffrements en JavaImplémentation des principaux algorithmes de chiffrements en Java
Implémentation des principaux algorithmes de chiffrements en JavaIbn Tofail University
 
Algorithme distribués pour big data saison 2 @DevoxxFR 2016
Algorithme distribués pour big data saison 2 @DevoxxFR 2016Algorithme distribués pour big data saison 2 @DevoxxFR 2016
Algorithme distribués pour big data saison 2 @DevoxxFR 2016Duyhai Doan
 
Chapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminChapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminSana Aroussi
 
Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Max Benana
 
Intelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheIntelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheMohamed Heny SELMI
 
Niveau intermediaire vocabulaire progressif du francais
Niveau intermediaire vocabulaire progressif du francaisNiveau intermediaire vocabulaire progressif du francais
Niveau intermediaire vocabulaire progressif du francaisPavi Belussi
 

En vedette (20)

7exercices loi-normale-et-corriges-www.coursdefsjes.com
7exercices loi-normale-et-corriges-www.coursdefsjes.com7exercices loi-normale-et-corriges-www.coursdefsjes.com
7exercices loi-normale-et-corriges-www.coursdefsjes.com
 
Intelligence somatique pour coachs et facilitateurs - Fiche pédagogique
Intelligence somatique pour coachs et facilitateurs - Fiche pédagogiqueIntelligence somatique pour coachs et facilitateurs - Fiche pédagogique
Intelligence somatique pour coachs et facilitateurs - Fiche pédagogique
 
Algorithmique et programmation michael griffith
Algorithmique et programmation michael griffithAlgorithmique et programmation michael griffith
Algorithmique et programmation michael griffith
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Les homophones grammaticaux
Les homophones grammaticauxLes homophones grammaticaux
Les homophones grammaticaux
 
Le cryptage et le décryptage
Le cryptage et le décryptageLe cryptage et le décryptage
Le cryptage et le décryptage
 
Exercices triphase
Exercices triphaseExercices triphase
Exercices triphase
 
Algorithmique au cycle 3
Algorithmique au cycle 3Algorithmique au cycle 3
Algorithmique au cycle 3
 
Algorithme DPLL
Algorithme DPLLAlgorithme DPLL
Algorithme DPLL
 
TD La fonction logarithme exercices corrigés - SOUFIANE MERABTI
TD La fonction logarithme exercices corrigés -  SOUFIANE MERABTITD La fonction logarithme exercices corrigés -  SOUFIANE MERABTI
TD La fonction logarithme exercices corrigés - SOUFIANE MERABTI
 
Merise exercicesmcdcorriges-121007174045-phpapp01
Merise exercicesmcdcorriges-121007174045-phpapp01Merise exercicesmcdcorriges-121007174045-phpapp01
Merise exercicesmcdcorriges-121007174045-phpapp01
 
Chap1 introduction à l'algoritmique
Chap1 introduction à l'algoritmiqueChap1 introduction à l'algoritmique
Chap1 introduction à l'algoritmique
 
Implémentation des principaux algorithmes de chiffrements en Java
Implémentation des principaux algorithmes de chiffrements en JavaImplémentation des principaux algorithmes de chiffrements en Java
Implémentation des principaux algorithmes de chiffrements en Java
 
Rapport Projet Module Complexité
Rapport Projet Module ComplexitéRapport Projet Module Complexité
Rapport Projet Module Complexité
 
7 exercices-remediations-jc jost
7 exercices-remediations-jc jost7 exercices-remediations-jc jost
7 exercices-remediations-jc jost
 
Algorithme distribués pour big data saison 2 @DevoxxFR 2016
Algorithme distribués pour big data saison 2 @DevoxxFR 2016Algorithme distribués pour big data saison 2 @DevoxxFR 2016
Algorithme distribués pour big data saison 2 @DevoxxFR 2016
 
Chapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminChapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court chemin
 
Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2
 
Intelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheIntelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de recherche
 
Niveau intermediaire vocabulaire progressif du francais
Niveau intermediaire vocabulaire progressif du francaisNiveau intermediaire vocabulaire progressif du francais
Niveau intermediaire vocabulaire progressif du francais
 

Similaire à cours de complexité algorithmique

Traitement des données massives (INF442, A2)
Traitement des données massives (INF442, A2)Traitement des données massives (INF442, A2)
Traitement des données massives (INF442, A2)Frank Nielsen
 
TDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroitTDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroitEspritAgile
 
Ippon: Doing multi-criteria queries on a Cassandra application (Français)
Ippon: Doing multi-criteria queries on a Cassandra application (Français)Ippon: Doing multi-criteria queries on a Cassandra application (Français)
Ippon: Doing multi-criteria queries on a Cassandra application (Français)DataStax Academy
 
Requêtes multi-critères avec Cassandra
Requêtes multi-critères avec CassandraRequêtes multi-critères avec Cassandra
Requêtes multi-critères avec CassandraJulien Dubois
 
jeu dispersion 6 sigma
jeu dispersion 6 sigmajeu dispersion 6 sigma
jeu dispersion 6 sigmaCIPE
 
Methodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdfMethodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdfTouhemiSyrina
 
Iut lyon 1 introduction à l'agilité - 20 juin 2012
Iut lyon 1   introduction à l'agilité - 20 juin 2012Iut lyon 1   introduction à l'agilité - 20 juin 2012
Iut lyon 1 introduction à l'agilité - 20 juin 2012agnes_crepet
 
Polarion webinaire valeur(s) 2018 10 18
Polarion webinaire valeur(s) 2018 10 18Polarion webinaire valeur(s) 2018 10 18
Polarion webinaire valeur(s) 2018 10 18Olaf de Hemmer Gudme
 
Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerpHORIYASOFT
 
jeu stratégie de maintenance
jeu stratégie de maintenancejeu stratégie de maintenance
jeu stratégie de maintenanceCIPE
 
Jeu gestion de projets distanciel
Jeu gestion de projets distancielJeu gestion de projets distanciel
Jeu gestion de projets distancielNadia Gharbi
 

Similaire à cours de complexité algorithmique (20)

Traitement des données massives (INF442, A2)
Traitement des données massives (INF442, A2)Traitement des données massives (INF442, A2)
Traitement des données massives (INF442, A2)
 
2-Algo.ppt
2-Algo.ppt2-Algo.ppt
2-Algo.ppt
 
Nouvelles Acquisitions Décembre 2009
Nouvelles Acquisitions Décembre 2009Nouvelles Acquisitions Décembre 2009
Nouvelles Acquisitions Décembre 2009
 
rapport
rapportrapport
rapport
 
Asd1
Asd1Asd1
Asd1
 
TDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroitTDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroit
 
Ippon: Doing multi-criteria queries on a Cassandra application (Français)
Ippon: Doing multi-criteria queries on a Cassandra application (Français)Ippon: Doing multi-criteria queries on a Cassandra application (Français)
Ippon: Doing multi-criteria queries on a Cassandra application (Français)
 
Requêtes multi-critères avec Cassandra
Requêtes multi-critères avec CassandraRequêtes multi-critères avec Cassandra
Requêtes multi-critères avec Cassandra
 
jeu dispersion 6 sigma
jeu dispersion 6 sigmajeu dispersion 6 sigma
jeu dispersion 6 sigma
 
Methodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdfMethodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdf
 
Tp1 corr
Tp1 corrTp1 corr
Tp1 corr
 
Iut lyon 1 introduction à l'agilité - 20 juin 2012
Iut lyon 1   introduction à l'agilité - 20 juin 2012Iut lyon 1   introduction à l'agilité - 20 juin 2012
Iut lyon 1 introduction à l'agilité - 20 juin 2012
 
Tebessa mathfloss
Tebessa mathflossTebessa mathfloss
Tebessa mathfloss
 
MyCv
MyCv MyCv
MyCv
 
Polarion webinaire valeur(s) 2018 10 18
Polarion webinaire valeur(s) 2018 10 18Polarion webinaire valeur(s) 2018 10 18
Polarion webinaire valeur(s) 2018 10 18
 
Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerp
 
Dynoptim
DynoptimDynoptim
Dynoptim
 
jeu stratégie de maintenance
jeu stratégie de maintenancejeu stratégie de maintenance
jeu stratégie de maintenance
 
Jeu gestion de projets distanciel
Jeu gestion de projets distancielJeu gestion de projets distanciel
Jeu gestion de projets distanciel
 
Cours 01.pptx
Cours 01.pptxCours 01.pptx
Cours 01.pptx
 

Dernier

Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxrajaakiass01
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfAmgdoulHatim
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaireTxaruka
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesMohammedAmineHatoch
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesUnidad de Espiritualidad Eudista
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcourshalima98ahlmohamed
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLElebaobabbleu
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxhamzagame
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxikospam0
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKNassimaMdh
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Technologia Formation
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...Universidad Complutense de Madrid
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxShinyaHilalYamanaka
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...Nguyen Thanh Tu Collection
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetJeanYvesMoine
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkRefRama
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdftrendingv83
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxabdououanighd
 

Dernier (19)

Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 

cours de complexité algorithmique

  • 1. Enseignants: Dr. Atef MASMOUDI & Dr. Ameur CH’HAYDER AU: 2015-2016 17/12/2015 1Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 https://www.facebook.com/groups/informatique.prepas
  • 2. L thé i d l l ité l ith i i à La théorie de la complexité algorithmique vise à: ◦ classer les problèmes selon leur difficulté, classer les algorithmes selon leur efficacité◦ classer les algorithmes selon leur efficacité, ◦ comparer les algorithmes résolvant un même problème. Proposer en Python deux programmes différentsProposer en Python deux programmes différents pour vérifier la primalité d’un entier n? Proposer en Python deux programmes différents pour calculer xn?pour calculer xn? 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 2 https://www.facebook.com/groups/informatique.prepas
  • 3.  Pour mesurer le temps d'exécution d’un programme en Python nous pouvons simuler un chronomètre : ◦ on le déclenche juste avant le début du programmeon le déclenche juste avant le début du programme, ◦ on l'arrête juste après la fin du programme, ◦ le temps écoulé entre les deux pressions est la durée qui nous intéresse.  En Python, on peut simuler un chronomètre grâce au module time ; Exemple: f i i *from time import * debut = time() # on déclenche le chronomètre # votre programmeot e p og a e fin = time() # on arrête le chronomètre print(’Temps écoulé:’, fin - debut, ’ secondes’) 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 3 https://www.facebook.com/groups/informatique.prepas
  • 4. Ecrire un programme Python pour vérifier la i lité d ?primalité de n? Programme naïf: vérifier si n possède un diviseur dans l’intervalle [2,n-1] 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 4 https://www.facebook.com/groups/informatique.prepas
  • 5. Ecrire un programme Python pour vérifier la primalité de n?primalité de n? Programme rapide: vérifier si n possède un diviseur dans l’intervalle [2 n]l intervalle [2,n], 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 5 https://www.facebook.com/groups/informatique.prepas
  • 6. Ecrire un programme Python pour calculer xn? Méthode classique: Xn x*x* *xXn=x*x*………….*x n foisn fois 17/12/2015 6 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 https://www.facebook.com/groups/informatique.prepas
  • 7. Exponentiation rapide 17/12/2015 7Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 https://www.facebook.com/groups/informatique.prepas
  • 8. D l’ét d d l ité d’ l ithDans l’étude de complexité d’un algorithme on ne mesure pas la durée en heures, minutes, secondes, ...: ◦ cela impliquerait d'implémenter les algorithmes qu'oncela impliquerait d implémenter les algorithmes qu on veut comparer ; ◦ de plus, ces mesures ne seraient pas pertinentes car le même algorithme sera plus rapide sur une machine plus puissante ; L’étude de complexité consiste donc à utiliser des unités de temps abstraites proportionnellesdes unités de temps abstraites proportionnelles au nombre d'opérations effectuées ; On pourra par la suite adapter ces quantités enOn pourra par la suite adapter ces quantités en fonction de la machine sur laquelle l'algorithme s'exécute ; 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 8 s exécute ; https://www.facebook.com/groups/informatique.prepas
  • 9.  La complexité temporelle d'un algorithme consiste à calculer le nombre d'opérationsconsiste à calculer le nombre d opérations élémentaires (affectations, comparaisons, opérations arithmétiques,…) effectuées par unp q , ) p algorithme.  Ce nombre s'exprime en fonction de la taille n des données.  On s'intéresse: ◦ La complexité au pire: temps d'exécution maximum, dans le cas le plus défavorable. ◦ La complexité au mieux: temps d'exécution minimumLa complexité au mieux: temps d exécution minimum, dans le cas le plus favorable. ◦ La complexité moyenne: temps d'exécution dans un cas édi d t d' é timédian, ou moyenne des temps d'exécution.  Le plus souvent, on calcule la complexité au pire, car on veut borner le temps d'exécutioncar on veut borner le temps d exécution 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 9 https://www.facebook.com/groups/informatique.prepas
  • 10.  Calculer le coût d’un programme revient à calculer le Calculer le coût d un programme revient à calculer le nombre d’opérations effectuées en fonction de la taille des données  Pour déterminer le coût d’un algorithme, on se fonde en général sur le modèle de complexité suivant : ff l’é l d’◦ Une affectation, une comparaison ou l’évaluation d’une expression arithmétique (+,-,/,*,//,%,**) ayant en général un faible temps d’exécution considéré commegénéral un faible temps d exécution considéré comme l’unité de mesure du coût d’un algorithme. ◦ Le coût des instructions p et q en séquence est laLe coût des instructions p et q en séquence est la somme des coûts de l’instruction p et de l’instruction q. 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 10 https://www.facebook.com/groups/informatique.prepas
  • 11. ◦ Le coût d’un test if◦ Le coût d un test if if b: p else: q Le coût d’un test est égal au maximum des coûts des instructionsLe coût d’un test est égal au maximum des coûts des instructions p et q, plus le temps d’évaluation de l’expression b. ◦ Le coût d’une boucle for for i in range(n): p L û d’ b l f é l b d é é i iLe coût d’une boucle for est égal au nombre de répétitions multiplié par le coût du bloc d’instructions p. Quand le coût de p dépend de la valeur de i, le coût total de laQ p p , boucle est la somme des coûts de p pour chaque valeur de i. 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 11 https://www.facebook.com/groups/informatique.prepas
  • 12. ◦ Le cas d’une boucle while◦ Le cas d une boucle while while condition: pp Le cas d’une boucle while est plus complexe à traiterp p puisque le nombre de répétitions n’est en général pas connu a priori. On peut majorer le coût de l’exécution de la boucle par l b d é étiti ff t éle nombre de répétitions effectuées. 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 12 https://www.facebook.com/groups/informatique.prepas
  • 13.  Exemple: Exemple: ◦ Calculer la factorielle d’un entier n 1 affectation (n-1) itérations 1 affectation + 1 multiplication 1 renvoi Le coût de l’algorithme = Nombre total d’opérationsLe coût de l algorithme = Nombre total d opérations 1 Affectation + (n-1) *( 1 affectation + 1 multiplication)+1 renvoi f( ) 1+ ( 1)*2+1 2* 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 13 f(n)=1+ (n-1)*2+1=2*n https://www.facebook.com/groups/informatique.prepas
  • 14.  Exemple: Exemple: ◦ Vérifier la primalité d’un entier n (n-2) itérations 1 reste + 1 comparaison1 reste + 1 comparaison 1 renvoi 1 renvoi   f1(n)=(n-2)*2+1 =2n-3 (n-1) itérations 1 reste + 1 comparaison 1 renvoi 1 renvoi f2(n)=(n-1)*2+1n=2**31-1 f1( ) 4294967293 14 =2*n-1f1(n)= 4294967293 f2(n)= 92679 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 https://www.facebook.com/groups/informatique.prepas
  • 15.  Exemple: Calculer xn Exemple: Calculer x 1 affectation n itérations 1 affectation + 1 multiplication 1 renvoi f1(n)=1+n*2+1 2 2 1 affectation (log2(n)) itérations 1 i =2n+2 1 comparaison 1 reste + 1 comparaison 1 affectation + 1 multiplication 1 affectation + 1 division1 affectation + 1 division 1 affectation + 1 multiplication 1 renvoi f2(n)=1+ (log2(n)+1) *(1+2+2+2)2 + (log2(n)+1) *2+1 =9*log2(n)+11 La représentation binaire de n nécessite (log2(n)+1) bits û l (l ( ) ) b 9 l ( ) 15 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 Le coût maximal sur (log2(n)+1) bits = 9*log2(n)+11 X=3 et n=2**20-1 f1(n)= 2097152 et f2(n)=182 https://www.facebook.com/groups/informatique.prepas
  • 16. Calculer le coût des programmes suivantsp g 1 affectation n itérations 1 affectation + 1 addition 1 renvoi f1(n)=1+n*2+1 2 2=2n+2 1 affectation n itérations n itérations 1 affectation + 1 addition + 1 multiplication 1 renvoi f2(n)=1+n*n*3+1 =3n2+2 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 16 https://www.facebook.com/groups/informatique.prepas
  • 17. Calculer le coût des programmes suivantsp g 1 affectation n itérations i itérationsi itérations 1 affectation + 1 addition + 1 multiplication 1 renvoi f1(n)=1+(n*(n+1)/2)*3+1 =(3/2)n2+(3/2)n+2 1 affectation log2(n)  itérations 1 affectation + 1 multiplication 1 condition 1 condition 1 renvoi l ( )  17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 17 f2(n)=1+log2(n) *3+1+1 =3*log2(n) +3 https://www.facebook.com/groups/informatique.prepas
  • 18.  Généralement, la complexité d'un algorithme est une mesure de sa performance asymptotique dans le pire cas ;  Que signifie ‘asymptotique’ ? ◦ on s'intéresse à des données très grandes ;  Que signifie ‘dans le pire cas’ ? ◦ on s'intéresse à la performance de l'algorithme dans les situations où le problème prend le plus de temps.  Pourquoi ? ê û◦ pour être sûr que l'algorithme ne prendra jamais plus de temps que ce qu'on a estimé. Ce qui correspond à donner une majoration du nombre d’opérationsdonner une majoration du nombre d opérations effectuées par l’algorithme. 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 18 https://www.facebook.com/groups/informatique.prepas
  • 19.  On dit que la complexité de l'algorithme est O(g(n)) ou g est d'habitude une combinaison de polynômes, logarithmes oup y g exponentielles.  Ce qui signifie que le nombre d'opérations Ce qui signifie que le nombre d opérations effectuées, noté par f(n), est borné par C*g(n) ou C est une constante lorsque nC g(n), ou C est une constante, lorsque n tend vers l'infini. 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 19 https://www.facebook.com/groups/informatique.prepas
  • 20. Si f et g sont deux fonctions positives réelles: f(n) = O(g(n)) si et seulement si le rapport f/g estf(n) = O(g(n)) si et seulement si le rapport f/g est borné a l'infini (f est dominée par g): ◦ ∃C>0 ∃n >0 n>n f(n) ≤ C*g(n)◦ ∃C>0, ∃n0>0, n>n0, f(n) ≤ C g(n) 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 20 https://www.facebook.com/groups/informatique.prepas
  • 21.  La notation O dite notation de Landau vérifie La notation O, dite notation de Landau, vérifie les propriétés suivantes :  si f=O(g) et g=O(h) alors f=O(h) i f O( ) t >0 l *f O( ) si f=O(g) et a>0, alors a*f=O(g)  si f1=O(g1) et f2=O(g2) alors f1+f2 = O(g1+g2) f ( ) f ( ) l f f ( ) si f1=O(g1) et f2=O(g2) alors f1*f2 = O(g1*g2) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 21 https://www.facebook.com/groups/informatique.prepas
  • 22. Si f et g sont deux fonctions positives réelles: f(n) = (g(n)) ⇒ g est une borne inférieuref(n) = (g(n)) ⇒ g est une borne inférieure asymptotique pour f: ◦ ∃C>0 ∃n >0 n>n C*g(n) ≤f(n)◦ ∃C>0, ∃n0>0, n>n0, C g(n) ≤f(n) 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 22 https://www.facebook.com/groups/informatique.prepas
  • 23. Si f et g sont deux fonctions positives réelles:  f(n) = Θ(g(n)) ⇒f et g ont le même ordre de grandeur : f(n) = Θ(g(n)) ⇒f et g ont le même ordre de grandeur : ◦ ∃c1,c2>0, ∃n0>0, n>n0, c1*g(n) ≤ f(n) ≤c2*g(n) 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 23 https://www.facebook.com/groups/informatique.prepas
  • 24.  O(1) : complexité constante, pas d'augmentation du O(1) : complexité constante, pas d augmentation du temps d'exécution quand le paramètre croit. ◦ Exemple: affectation, comparaison, …  O(log(n)) : complexité logarithmique augmentation O(log(n)) : complexité logarithmique, augmentation très faible du temps d'exécution quand le paramètre croit. ◦ Exemple: conversion du décimal au binaireExemple: conversion du décimal au binaire  O(n) : complexité linéaire, augmentation linéaire du temps d'exécution quand le paramètre croit (si le paramètre double le temps double)paramètre double, le temps double). ◦ Exemple: somme des n premiers entiers naturels  O(n*log(n)) : complexité quasi-linéaire, augmentation un peu supérieure a O(n)un peu supérieure a O(n).  Exemple: calculer la somme des chiffres des n premiers entiers naturels 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 24 https://www.facebook.com/groups/informatique.prepas
  • 25.  O(n2) : complexité quadratique, quand le O(n ) : complexité quadratique, quand le paramètre double, le temps d'exécution est multiplie par 4. ◦ Exemple : algorithmes avec deux boucles imbriquées◦ Exemple : algorithmes avec deux boucles imbriquées.  O(ni) : complexité polynomiale, quand le paramètre double, le temps d'exécution est lti li 2imultiplie par 2i. ◦ Exemple : algorithme utilisant i boucles imbriquées.  O(an) : complexité exponentielle, quand le( ) p p , q paramètre double, le temps d'exécution est élevé à la puissance 2.  O(n!) : complexité factorielle asymptotiquement O(n!) : complexité factorielle, asymptotiquement équivalente à nn 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 25 https://www.facebook.com/groups/informatique.prepas
  • 26. 17/12/2015Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 26 https://www.facebook.com/groups/informatique.prepas
  • 27. On suppose qu’on dispose d’un ordinateur capable deOn suppose qu on dispose d un ordinateur capable de réaliser 109 opérations/seconde 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 27 https://www.facebook.com/groups/informatique.prepas
  • 28.  Les instructions de base (affectation, comparaison,p opération arithmétique,) prennent un temps constant, noté O(1)  On additionne les complexités d'opérations en séquence : Instruction p O(f1(n)) I i O(f2( ))Instruction q O(f2(n)) O(f1(n)) + O(f2(n)) = O(f1(n) + f2(n)) =O(max(f1(n), f2(n))) L b h t diti l Les branchements conditionnels : 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 28 = O(max(f1(n) , f2(n), g(n))) https://www.facebook.com/groups/informatique.prepas
  • 29.  La complexité d’une boucle for est égal au nombre d’itérations multiplié par la complexité de l’instruction p si ce dernier ne dépend pas de la valeur de i. O(n*f(n))  La complexité d’une boucle while: = O(m*max(g(n) , f(n))) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 29 https://www.facebook.com/groups/informatique.prepas
  • 30.  Pour calculer la complexité d'un programme :p p g 1. on calcule la complexité de chaque partie du programme; 2. on combine ces complexités conformément aux règles ' i d iqu'on vient de voir ; 3. on simplifie le résultat grâce aux règles de simplifications suivantes:simplifications suivantes: ◦ On remplace les constantes multiplicatives par 1, ◦ On annule les constantes additives ;◦ On annule les constantes additives ; ◦ On conserve le terme dominant. 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 30 https://www.facebook.com/groups/informatique.prepas
  • 31. Exemple: g(n)=5n3-6n2+4p g ◦ On remplace les constantes multiplicatives par 1, 1n3-1n2+4 ◦ On annule les constantes additives ; ◦ 1n3-1n2 ◦ On conserve le terme dominant. ◦ n3-n2 l ( ) ( 3)◦ Solution g(n)=O(n3) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 31 https://www.facebook.com/groups/informatique.prepas
  • 32. O(1) n-1 itérations O(n) O(1)  La complexité de la fonction: O(1)  La complexité de la fonction: 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 32 https://www.facebook.com/groups/informatique.prepas
  • 33. O(n) O(n)O(n) O(n) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 33 https://www.facebook.com/groups/informatique.prepas
  • 34. O(log(n)) O(log(n)) O(log(n)) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 34 https://www.facebook.com/groups/informatique.prepas
  • 35. O(n2) O(n2)O(n2) O(n*log(n)) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 35 https://www.facebook.com/groups/informatique.prepas
  • 36.  Montrez que la complexité de la fonction suivante estq p quadratique en n, c’est-à-dire en O(n2) 1 affectation n itérationsn itérations 1 affectation k itérations 1 affectation + 1 multiplication 1 affectation + 1 addition +1 division 1 renvoi f(n)=1+n+2*(n*(n-1)/2)+3*n+1 =n2+3*n+2 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 36 n +3 n+2 https://www.facebook.com/groups/informatique.prepas
  • 37.  Que fait cette fonction ? calcul de exp(1)  Donnez une version linéaire de cet algorithme, c’est-à- dire en O(n) 1 affectation 1 affectation1 affectation n itérations 1 affectation +1 Multiplication + 1 addition 1 affectation + 1 addition +1 division 1 renvoi f(n)=2+6*n+1 =6*n+3 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 37 6 n+3 https://www.facebook.com/groups/informatique.prepas
  • 38.  Complétez le tableau suivant. Il s’agit de calculer le nombre d’opérations nécessaire pour exécuter le programme en fonction de sa Complexité n=10 n=100 n=1000 complexité et de la taille du problème traité p n n2n n3 2n2 n log(n) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 38 log(n) https://www.facebook.com/groups/informatique.prepas
  • 39.  Complétez le tableau suivant. é éIl s’agit de calculer le temps nécessaire pour exécuter un problème en supposant qu’on dispose d’un ordinateur capable de réaliser 109 opérations/seconde Complexité n=10 n=100 n=1000 ordinateur capable de réaliser 109 opérations/seconde n n2 n3 2n2 n log(n) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 39 log(n) https://www.facebook.com/groups/informatique.prepas
  • 40.  Rangez les fonctions suivantes par ordre de Rangez les fonctions suivantes par ordre de grandeur croissant : n n*log(n) n log(n) n log2(n) n2 (3/2)n◦ n, n*log(n),n, log(n), n log2(n),n2, (3/2)n, n10, log2(n)  Calculer la complexité des programmes:  Premier et premier_rapide  Puissance et puissance_rapide 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 40 https://www.facebook.com/groups/informatique.prepas
  • 41.  Dire si les affirmations suivantes sont vrais Dire si les affirmations suivantes sont vrais ou fausses: ◦ 2n+3=O(n)◦ 2n+3=O(n) ◦ 2n+log(n)=O(n2) ◦ 2n7+5n4+3n2+1=O(n7)( ) ◦ 5n3+3nlog(n)+6n=O(n3) ◦ 3log(n)+2=O(log(n)) ◦ 2n+100log(n)=O(log(n)) ◦ 2n+2=O(2n) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 41 https://www.facebook.com/groups/informatique.prepas
  • 42.  Quelle est la complexité de la fonction Quelle est la complexité de la fonction suivante: O(n2log(n)) 17/12/2015 Dr. Atef MASMOUDI & Dr. Ameur CH'HAYDER, IPEIS, AU:2015-2016 42 https://www.facebook.com/groups/informatique.prepas