Présentation
Un algorithme est une méthode finie et non ambiguë pour résoudre un problème. En terminale, on étudie des familles d’algorithmes qui s’appuient sur des structures récursives (arbres) et relationnelles (graphes).
On poursuit l’analyse des coûts en temps et en mémoire et on apprend à améliorer un procédé : passer d’un coût quadratique n^2 à n·log2(n), ou de n à log2(n) selon les cas.
Les approches classiques « diviser pour régner », programmation dynamique et recherche textuelle illustrent la conception d’algorithmes efficaces et leur justification (correction, terminaison).