Un algoritmo se define como una secuencia de instrucciones que representa una solución a un problema particular. Los algoritmos pueden expresarse de varias formas, incluyendo lenguaje natural, pseudocódigo y diagramas de flujo. Diagramas de flujo y pseudocódigo evitan ambigüedades del lenguaje natural al proporcionar formas más estructuradas de representar algoritmos de manera independiente a un lenguaje de programación específico.