Algorithme

Les étapes successives du fonctionnement du crible d'Ératosthène, un algorithme ancien, mais toujours d'actualité, qui permet de déterminer tous les nombres premiers plus petits qu'un entier donné, ici 120.
Un diagramme d'Ada Lovelace, le premier algorithme publié
Algorithme de découpe d'un polygone quelconque en triangles (triangulation).

Un algorithme est une suite finie et non ambiguë d'instructions et d’opérations permettant de résoudre une classe de problèmes[1].

Le domaine qui étudie les algorithmes est appelé l'algorithmique. On retrouve aujourd'hui des algorithmes dans de nombreuses applications informatiques, dont dans les systèmes permettant le fonctionnement des ordinateurs[2], la cryptographie, le routage d'informations, la planification et l'utilisation optimale des ressources, le traitement d'images, le traitement de textes, la bio-informatique, l'intelligence artificielle, , etc.

L'algorithme peut être mis en forme de façon graphique dans un algorigramme ou organigramme de programmation.

  1. La notion de problème peut être vue dans un sens large, il peut s'agir d'une tâche à effectuer, comme trier des objets, assigner des ressources, transmettre des informations, traduire un texte, etc. L'algorithme reçoit des données (les entrées), par exemple les objets à trier, la description des ressources à assigner, des besoins à couvrir, un texte à traduire, les informations à transmettre et l'adresse du destinataire, etc., et fournit éventuellement des données (la sortie), par exemple les objets triés, les associations ressource-besoin, un compte-rendu de transmission, la traduction du texte, etc.
  2. En particulier dans les systèmes d'exploitation et la compilation