Numérique et sciences informatiques (NSI) · Terminale

La méthode « diviser pour régner »

Trier un million de valeurs semble long. Mais trier deux moitiés de cinq cent mille valeurs, puis les fusionner, l’est déjà moins… et on peut recommencer sur chaque moitié. C’est l’idée de diviser pour régner : découper un problème en sous-problèmes plus petits de même nature, les résoudre récursivement, puis combiner leurs solutions.

Une question sur ce cours ?

ULU, le tuteur d’ULUMINE, t’aide à partir de ce cours.

Séance guidée avec ULU (≈ 10 min)Diagnostic, explication, exercices adaptés et bilan.

Objectifs

  • Identifier les trois étapes d’un algorithme « diviser pour régner »
  • Écrire la recherche dichotomique sous forme récursive
  • Comprendre et programmer le tri fusion
  • Comparer le coût du tri fusion (n log n) à celui des tris par insertion ou sélection (n²)

1. Le principe

  1. Diviser : découper le problème en sous-problèmes de même nature, plus petits (souvent deux moitiés).
  2. Régner : résoudre chaque sous-problème, récursivement ; les cas assez petits sont résolus directement (cas de base).
  3. Combiner : construire la solution du problème à partir des solutions des sous-problèmes.

2. Recherche dichotomique récursive

Dans une liste triée, on compare x à l’élément du milieu : soit on l’a trouvé, soit on continue dans une seule moitié. Ici, il n’y a pas d’étape de combinaison : un seul sous-problème est résolu.

3. Le tri fusion

On coupe la liste en deux moitiés, on trie chaque moitié par tri fusion, puis on fusionne les deux moitiés triées : on compare leurs premiers éléments, on prend le plus petit, et on recommence.

4. Autres exemples

  • Exponentiation rapide : xⁿ = (xn/2)² si n est pair ; on divise l’exposant par 2 à chaque appel.
  • Rotation d’une image carrée de côté 2ᵏ d’un quart de tour : on la découpe en quatre quarts, on fait tourner chaque quart récursivement, puis on permute circulairement les quatre quarts.
  • Maximum d’une liste : maximum de la moitié gauche, maximum de la moitié droite, puis le plus grand des deux.

À retenir

  • Diviser pour régner : diviser, régner (récursivement), combiner.
  • Recherche dichotomique : liste triée, une seule moitié explorée, environ log₂(n) étapes.
  • Tri fusion : deux moitiés triées récursivement puis fusionnées.
  • Le tri fusion coûte de l’ordre de n log₂(n), bien moins que n² pour de grandes listes.

Et maintenant, à toi !

Vérifie que tu as compris avec les exercices, puis révise avec la fiche.

À découvrir aussi