Un algoritmo es un conjunto de instrucciones definidas y ordenadas para resolver un problema. Un algoritmo tiene entrada, proceso y salida, y se caracteriza por ser preciso, ordenado, finito y concreto. Los algoritmos se pueden representar a través de código de fuente, pseudocódigo, sistemas formales o diagramas de flujo.