← Retour au cours ComplexitĂ©

Fonction de coût T(n)

définition

T(n) est le nombre d'opérations élémentaires (comparaisons, affectations
) en fonction de la taille n des données.

n
Taille de l'entrée : nombre d'éléments d'un tableau, de caractÚres d'une chaßne

Pire cas
On s'intéresse souvent au pire cas : maximum d'opérations pour une entrée de taille n
Meilleur cas
Minimum possible (ex. trouvé dÚs le 1er test en recherche séquentielle)
Cas moyen
Moyenne sur toutes les entrées de taille n (plus rare en PremiÚre)
À retenir

Exemple : parcourir un tableau de n cases → au pire on fait n comparaisons → T(n) = n.

Notation O (grand O)

asymptotique

On garde seulement le terme dominant quand n tend vers l'infini ; on ignore les constantes multiplicatives.

Définition
f(n) = O(g(n)) si, au-delĂ  d'un certain n, f(n) ≀ k × g(n) pour une constante k
Exemple
T(n) = 3n + 10 → on dit O(n) (pas O(3n))
Exemple
T(n) = n2 + 5n → O(n2)
IntĂ©rĂȘt
Comparer des algorithmes indépendamment de la machine ou du langage

Ordres de grandeur Ă  connaĂźtre

croissance

Du plus rapide au plus lent quand n augmente (hors constantes).

O(1)
Constant : accĂšs Ă  un index de tableau
O(log n)
Logarithmique : dichotomie
O(n)
Linéaire : une boucle sur n éléments
O(n log n)
Tri efficace (fusion, rapide)
O(n2)
Quadratique : deux boucles imbriquées sur n
O(2n)
Exponentiel : exploration combinatoire naĂŻve
À retenir

Pour n = 1 000 000 : O(log n) ≈ 20, O(n) = 1 000 000, O(n2) explose.

📋 RĂšgles pratiques pour dĂ©duire O(...)

Boucle simple

Une boucle qui parcourt n Ă©lĂ©ments une fois → O(n).

Boucles imbriquées

Deux boucles chacune sur n → O(n2). Trois boucles → O(n3).

Diviser par 2 à chaque étape

Comme la dichotomie : on halve l'intervalle → O(log n).

T(n) vs O(n) en contrĂŽle

T(n) peut ĂȘtre une expression prĂ©cise (3n + 2). O(n) est la classe de croissance. On Ă©crit : « la complexitĂ© est O(n) » ou « T(n) = O(n) ».

Expression T(n)Notation O
5O(1)
2 log2 n + 3O(log n)
n + 100O(n)
4n2 + nO(n2)