El algoritmo está presente en casi todos los aspectos de nuestra vida diaria.
Por ejemplo, cuando usamos el GPS para geolocalizarnos, en ese caso el cálculo es posible gracias a un algoritmo. Lo mismo se puede decir cuando escribimos una palabra en un motor de búsqueda en la web. Su uso es amplio y variado, desde la finanza, donde podría parecer obvio, hasta la medicina, para optimizar los medicamentos o las terapias contra el cáncer. Con el tiempo, sin embargo, este término ha trascendido los límites de las matemáticas, adquiriendo nuevos significados. Así, se habla del algoritmo para encontrar al alma gemela o las vacaciones perfectas.
Esquematizar y formalizar nuestras acciones hoy en día es una práctica común útil para ordenar nuestras acciones e ideas con el fin de movernos según nuevos estándares que nos imponemos. El siguiente ejemplo es interesante.

A pesar de las sugerencias de naturaleza léxica, el término 'algoritmo' no deriva ni de 'álgebra' ni de 'aritmética', sino del apelativo al-Khuwarizmi (originario de Corasmia) del matemático Muhammad ibn Musa del siglo IX.
En la versión arcaica 'algorismo', se utilizaba en el siglo XIII para denotar el sistema de numeración árabe y, posteriormente, los métodos de la aritmética. Solo en tiempos más recientes, el término ha asumido de manera inequívoca la connotación de procedimiento formal de cálculo.
En un primer momento, la locución algoritmo se utilizaba exclusivamente en matemáticas; hoy en día ha entrado en el lenguaje común, donde a menudo sufre un 'desvanecimiento del significado', reduciendo el concepto a un método para alcanzar un objetivo.
Es ahora evidente cómo podemos encontrar un algoritmo incluso pensando simplemente en las acciones que realizamos a diario.
Un ejemplo adecuado es el procedimiento de preparación de la cafetera para el café, o todos los pasos para un buen lavado,
o aún mejor, el procedimiento expuesto en cualquier receta culinaria.
Por lo tanto, el recetario de nuestra madre es un libro de algoritmos verdadero.
Para que una 'receta', una lista de instrucciones, pueda ser considerada un algoritmo, deben cumplirse los siguientes requisitos:
Finitez: cada algoritmo debe ser finito, es decir, cada instrucción debe poder ejecutarse en un tiempo finito y un número finito de veces
Generalidad: cada algoritmo debe proporcionar la solución para una clase de problemas; debe ser aplicable a cualquier conjunto de datos que pertenezca al conjunto de definición o dominio del algoritmo y debe producir resultados que pertenezcan al conjunto de llegada o codominio
No ambigüedad: deben definirse de manera única los pasos sucesivos a ejecutar; deben evitarse paradojas, contradicciones y ambigüedades; el significado de cada instrucción debe ser único para quien ejecute el algoritmo
He aquí los cinco puntos que debes recordar para definir las características de un algoritmo:
- los pasos constituyentes deben ser 'elementales', es decir, no deben descomponerse ulteriormente (atomicidad);
- los pasos constituyentes deben ser interpretables de manera directa y única por el ejecutor, sea humano o artificial (no ambigüedad);
- el algoritmo debe estar compuesto por un número finito de pasos y requerir una cantidad finita de datos de entrada (finitez)
- la ejecución debe tener fin después de un tiempo finito (terminación);
- la ejecución debe llevar a un resultado único (efectividad).
