Aller au contenu
studuel

NSI · Première · Algorithmique et programmation

Terminaison et complexité

S’arrête-t-il ? Combien ça coûte ?

En bref

Deux questions se posent devant tout algorithme, et elles sont indépendantes : termine-t-il ?

Deux questions se posent devant tout algorithme, et elles sont indépendantes : termine-t-il ? et combien d'opérations coûte-t-il ?

La terminaison

La boucleSa terminaison
Bornée (pour)Assurée par construction : le nombre de tours est fixé d'avance
Non bornée (tant que)À prouver

Pour la prouver, on exhibe un variant : une quantité entière, positive, qui décroît strictement à chaque tour.

Une suite d'entiers positifs strictement décroissante ne peut pas être infinie : la boucle s'arrête.

La correction

Un algorithme peut terminer et rendre un résultat faux. On le prouve correct par un invariant de boucle : une propriété vraie avant la boucle, conservée par chaque tour, et qui, jointe à la condition de sortie, donne le résultat voulu.

L'outilLa question à laquelle il répond
VariantEst-ce que ça s'arrête ?
InvariantEst-ce que c'est juste ?

Les classes de complexité

On compte les opérations élémentaires en fonction de la taille n, et l'on ne retient que l'ordre de grandeur.

La classeUn exemple
ConstantAccéder à la case i d'un tableau
LogarithmiqueRecherche dichotomique dans un tableau trié
LinéaireChercher un élément dans une liste non triée
n log nLes bons algorithmes de tri
QuadratiqueTri par sélection, tri par insertion : deux boucles imbriquées
ExponentielEssayer toutes les combinaisons : impraticable au-delà de quelques dizaines d'éléments

Ce que cela veut dire concrètement

Sur un million d'élémentsLe nombre d'opérationsLe temps
Algorithme linéaireUn millionUne seconde
Algorithme quadratiqueMille milliardsDes semaines

Améliorer l'algorithme bat toujours l'achat d'une machine plus rapide.

Pire cas, meilleur cas

Le cas de la recherche séquentielleSon coût
L'élément est en têteUne comparaison
L'élément est absentn comparaisons

On raisonne d'ordinaire sur le pire cas : c'est la seule garantie, et c'est lui qui sert à dimensionner un système.

Teste-toi

6 questions pour vérifier

Touche une réponse : la correction s’affiche tout de suite.

  1. 1.Qu’est-ce qu’un variant de boucle ?

  2. 2.Quelle est la complexité d’une recherche dichotomique dans un tableau trié ?

  3. 3.Un algorithme qui termine rend nécessairement un résultat correct.

  4. 4.Quelle est la complexité de deux boucles imbriquées parcourant chacune n éléments ?

  5. 5.Pourquoi raisonne-t-on d’ordinaire sur le pire cas ?

  6. 6.Combien d’opérations un algorithme quadratique effectue-t-il sur un million d’éléments ?

0 / 6 questions

Dans l’app, ce chapitre a son quiz complet, chronométré, et tes erreurs reviennent au bon moment pour ne plus les refaire.

Continuer dans l’app
Aperçu flouté de la fiche de révision

La fiche de révision, sur une page

Tout « Arrêt et complexité » sur une seule page A4 illustrée : l’essentiel, les pièges et un mini-test. Elle se débloque dans l’app avec des gemmes — et ton compte gratuit en offre assez pour tes trois premières fiches.

Débloquer la fiche dans l’app

Dans le même thème

NSI en première : passe à l’entraînement.

Le quiz complet, les exercices corrigés, les duels contre des élèves de ton niveau et un coach IA qui t’explique ce qui bloque.

Commencer gratuitement