Un algoritmo è una sequenza finita e ben definita di passi che trasforma l'input nel risultato desiderato. Lo valutiamo su due assi: correttezza (produce sempre la risposta giusta?) e efficienza (quanto tempo e memoria utilizza?).
L'idea
Un algoritmo valido deve essere (ogni passo è chiaro), (termina), e produrre il risultato per ogni input valido.
