À retenir
- C'est la partie logique qui précède la programmation.
- Un algorithme est indépendant du langage informatique utilisé.
- Il doit toujours avoir une fin (ne pas tourner en boucle indéfiniment).
L'algorithmique est la science de l'organisation logique. C'est l'art de concevoir une suite d'étapes précises et ordonnées pour résoudre un problème ou obtenir un résultat, un peu comme une recette de cuisine que l'on prépare avant même d'allumer les fourneaux.
Étymologie
Le mot dérive du nom du mathématicien persan Al-Khwarizmi (IXe siècle), dont les travaux sur l'algèbre ont posé les bases du calcul décimal. À l'origine, le terme désignait simplement l'art de calculer avec des chiffres, avant de devenir le socle de la logique informatique moderne.
Exemples d'usage
- Le tri d'une liste : définir comment ranger des noms par ordre alphabétique de la manière la plus rapide possible.
- Le calcul d'itinéraire : déterminer le chemin le plus court entre deux villes en fonction du trafic.
- La recommandation : suggérer un film à un utilisateur en fonction de ses goûts passés.
Cas d'usage
On utilise l'algorithmique partout : dans la création de logiciels, l'intelligence artificielle, le fonctionnement des moteurs de recherche, la gestion des réseaux sociaux et même dans l'optimisation des livraisons de colis.
Bonnes pratiques
Un bon algorithme doit être efficace (consommer peu de mémoire et de temps) et lisible. Il est conseillé de toujours dessiner son algorithme (via un organigramme ou du pseudo-code) avant de commencer à écrire la moindre ligne de code informatique.
Synonymes
Conseil
Pour progresser, ne foncez pas tête baissée dans le code. Entraînez-vous à résoudre des problèmes sur papier en écrivant des étapes simples : SI il se passe ceci, ALORS fais cela, SINON fais autre chose.
Questions fréquentes
Quelle est la différence avec la programmation ?
L'algorithmique est le plan logique (la recette), tandis que la programmation est la traduction de ce plan dans un langage compréhensible par la machine (la réalisation du plat).
Un algorithme est-il forcément complexe ?
Non, l'action de faire ses lacets ou de ranger des dossiers est un algorithme. La complexité dépend du problème à résoudre, pas du concept lui-même.