Achevia/ Première/ NSI 1re/ Algorithmique (tris, recherche)

CoursNumérique et sciences informatiques · 1re

Algorithmique (tris, recherche)

Comment trouver une information dans une longue liste, ou ranger des données dans l'ordre ? Ces tâches reposent sur des algorithmes. La spécialité NSI étudie l'algorithmique : la recherche et le tri, fondements de l'informatique.

Le cours

1. Qu'est-ce qu'un algorithme ?

Un algorithme est une suite finie d'instructions qui résout un problème, étape par étape. C'est une méthode précise, indépendante du langage de programmation utilisé. Un même algorithme peut être écrit dans différents langages.

L'algorithme décrit la marche à suivre pour résoudre un problème.

Exemple

Une recette de cuisine est comme un algorithme : une suite d'étapes à suivre.

2. La recherche dans une liste

Pour trouver un élément dans une liste, l'algorithme de recherche le plus simple parcourt la liste élément par élément jusqu'à le trouver (recherche séquentielle). Si la liste est triée, une recherche plus rapide est possible (recherche dichotomique).

Chercher efficacement est un problème fondamental.

Exemple

La recherche séquentielle parcourt la liste élément par élément jusqu'à trouver.

3. Le tri

Trier, c'est ranger les éléments d'une liste dans un ordre (croissant, alphabétique). Il existe plusieurs algorithmes de tri, plus ou moins efficaces. Le tri est une opération essentielle, qui facilite ensuite la recherche et l'analyse des données.

Le tri organise les données pour mieux les exploiter.

Exemple

Un algorithme de tri range une liste de nombres dans l'ordre croissant.

4. L'efficacité d'un algorithme

Tous les algorithmes ne se valent pas : certains résolvent un problème plus rapidement que d'autres. On compare leur efficacité, notamment le nombre d'opérations nécessaires. Choisir un bon algorithme est crucial quand les données sont nombreuses.

L'efficacité d'un algorithme compte beaucoup à grande échelle.

Exemple

Sur une grande liste, un algorithme efficace est bien plus rapide qu'un algorithme lent.

Pour approfondir ce chapitrefacultatif

Définitions clés

Algorithme
Une suite finie d'instructions précises qui résout un problème.
Recherche séquentielle
Parcourir une liste élément par élément jusqu'à trouver la valeur cherchée.
Recherche dichotomique
Sur une liste triée, chercher en coupant l'intervalle en deux à chaque étape : bien plus rapide.
Efficacité (complexité)
La mesure du nombre d'opérations d'un algorithme selon la taille des données.

Explications détaillées

Rechercher dans une liste

La recherche séquentielle parcourt les éléments un par un : simple, mais lente sur de grandes listes.

La recherche dichotomique, elle, exige une liste triée : on compare la valeur cherchée à l'élément du milieu, puis on ne garde que la moitié où elle peut se trouver, et on recommence. On divise ainsi le problème par deux à chaque étape — d'où une rapidité spectaculaire.

Trier et mesurer l'efficacité

Trier consiste à ranger des données dans l'ordre. Il existe plusieurs algorithmes de tri, plus ou moins rapides.

On mesure l'efficacité d'un algorithme par sa complexité : le nombre d'opérations selon la taille des données. Un bon algorithme fait gagner un temps considérable : sur des millions de données, le choix de l'algorithme change tout.

Méthode pas à pas

Appliquer une recherche dichotomique
  1. Vérifier que la liste est triée (condition indispensable).
  2. Comparer la valeur cherchée à l'élément du milieu.
  3. Si elle est plus petite, continuer dans la moitié gauche ; sinon, dans la moitié droite.
  4. Recommencer jusqu'à trouver la valeur (ou conclure qu'elle est absente).

Exemple corrigé pas à pas

Chercher par dichotomie

Chercher 7 dans la liste triée [1, 3, 5, 7, 9, 11] par recherche dichotomique.

  1. Élément du milieu ≈ 5. On compare : 7 > 5, on garde la moitié droite [7, 9, 11].
  2. Nouvel élément du milieu : 9. On compare : 7 < 9, on garde la moitié gauche [7].
  3. Il reste 7, qui correspond à la valeur cherchée.
  4. Trouvé en 3 comparaisons seulement, au lieu de parcourir toute la liste.

Erreurs fréquentes à éviter

  • Appliquer la recherche dichotomique sur une liste non triée.La dichotomie n'est valable QUE sur une liste triée.
  • Confondre un algorithme et un programme.L'algorithme est la méthode ; le programme est sa traduction dans un langage (comme Python).
  • Négliger l'efficacité d'un algorithme.Sur de grandes données, un algorithme lent peut être inutilisable : l'efficacité est cruciale.

Pour aller plus loin

Les algorithmes gouvernent le numérique

Recherche, tri, mais aussi recommandations, trajets, moteurs de recherche : des algorithmes sont à l'œuvre en permanence, souvent invisibles. Leur efficacité détermine la rapidité des services que nous utilisons. Comprendre l'algorithmique, c'est comprendre les rouages du monde numérique — et pouvoir en discuter les enjeux.

Ce qu'il faut absolument retenir

Ce qu'il faut absolument retenir

Vérifie ta compréhension

Exercice 1Qu'est-ce qu'un algorithme ?

Exercice 2Comment fonctionne la recherche séquentielle dans une liste ?

Exercice 3Que signifie « trier » une liste ?

Exercice 4Tous les algorithmes résolvant un même problème ont la même efficacité.

Exercice 5Pourquoi l'efficacité d'un algorithme est-elle importante quand les données sont nombreuses ?

Source officielle   Ministère de l'Éducation nationale — Programme officiel · FR-2019

Publicité

L'essentiel en images

Récapitulatif illustré du cours