TD8

Complexité

Performance matters

AMAZON : 1s de temps de chargement en plus = 1,6 milliard de CA perdu / an

WALLMART : entre 1 et 4s, pour chaque seconde gagné, 2% de conversion en plus

GOOGLE : 0,5s de plus pour avoir la réponse implique une perte de 20% du trafic

Calcul

Approximation asymptotique

for(int i=0; i<n; i++){
    // stuffs
}

Θ(n)

for(int i=0; i<n; i++){
    for(int i=0; i<n; i++){
        //stuffs
    }
}

Θ(n²)

Calcul

Θ(n)

Θ(n²)

Θ(n)

O(1): accès direct à une valeur (collection indexée)

O(n): boucle sur une collection de taille n

O(n²): boucle dans une boucle pour la même collection

O(log n): diviser pour régner

O(n log n): boucle qui utilise diviser pour conquérir

O(n!): ajout d'une boucle imbriquée pour chaque élément de la collection

Diviser pour régner

INSA- 2ième année - TD8

By Mickael Lecoq

INSA- 2ième année - TD8

  • 1,023