Les algorithmes sont une collection d'instructions étape-par-étape utilisés dans les domaines des mathématiques et de l'informatique. Les programmeurs utilisent des algorithmes pour effectuer des tâches simples et calculs. Même les programmes informatiques les plus complexes sont construits à partir d'une combinaison d'algorithmes de base. Par définition, les algorithmes doivent avoir une sortie, qui peut prendre la forme d'une unité de données informatiques. En outre, les algorithmes doivent être finie. Algorithmes de programmation varient en fonction de langage de programmation, mais tous les algorithmes suivre certains principes de conception, quelle que soit la langue dans laquelle ils sont finalement codées.