Definición de algoritmo
Un algoritmo es un conjunto detallado y lógico de pasos, para alcanzar un objetivo o resolver un problema.
Como ejemplo tenemos el instructivo para armar un modelo de un avión a escala, si una persona sigue en forma estricta los pasos indicados en el instructivo, al final obtendrá como resultado el avión a escala, lo mismo obtendría otra persona que se dedicara a armar el mismo modelo.
Los pasos deben ser lo suficientemente detallados para que el procesador lo entienda, en el caso de nuestro ejemplo, el procesador es el cerebro de la persona que está armando el modelo, pero el ser humano tiende a obviar muchas cosas y es muy factible que el humano haga en forma automática algunos de los pasos del instructivo, sin detenerse a pensar mucho en cómo llevarlos a cabo, pero para una computadora resultaría imposible realizar la tarea, ya que la máquina requiere de instrucciones muy detallados para poder ejecutarlas.
Pasemos ahora a describir las características de un algoritmo, las cuáles son las siguientes:
Finito. El algoritmo debe de tener, dentro de la secuencia de pasos para realizar la tarea, una situación o condición que lo detenga porque de lo contrario, se pueden dar ciclos infinitos que impidan llegar a un término.
Preciso. Un algoritmo no debe dar lugar a criterios, por ejemplo, qué sucedería si dos personas en distintos lugares se les indicara que prepararan un pastel; suponemos que las personas saben cómo preparar un pastel, y siguiendo las indicaciones de la receta del pastel llegan a un paso en el que se indica que se agregue azúcar al gusto, cada persona agregaría la azúcar de acuerdo a sus preferencias, pero entonces el resultado ya no sería el mismo, ya que los dos pasteles serían diferentes en sus características. Con este ejemplo concluimos de que no se trata de un algoritmo puesto que existe una ambigüedad en el paso descrito.
Obtener el mismo resultado. Bajo cualquier circunstancia, si se siguen en forma estricta los pasos del algoritmo, siempre se debe llegar a un mismo resultado, como por ejemplo: obtener el máximo común divisor de dos números enteros positivos, armar un modelo a escala, resolver una ecuación, etcétera.
Si carece de cualquiera de estas características, entonces los pasos en cuestión no pueden considerarse como un algoritmo.
Fuente: Apunte Análisis, diseño e implantación de algoritmos de la facultad de contaduría y administración, UNAM