El algoritmo está presente en casi todos los aspectos de nuestra vida diaria.
Por ejemplo, cuando usamos el GPS para geolocalizarnos, el cálculo es posible gracias a un algoritmo. Lo mismo sucede cuando escribimos una palabra en un motor de búsqueda en la web. Su aplicación es amplia y variada, desde las finanzas, 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 adquirido inequivocamente 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 'debilitamiento 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 y propio.
Para que una 'receta', una lista de instrucciones, pueda ser considerada un algoritmo, deben satisfacerse los siguientes requisitos:
Finitez: cada algoritmo debe ser finito, es decir, cada instrucción individual debe poder ser ejecutada 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 aplicarse 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 inequívoca los pasos sucesivos a ejecutar; deben evitarse paradojas, contradicciones y ambigüedades; el significado de cada instrucción debe ser inequívoco para quienquiera que 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 ulteriormente descomponibles (atomicidad);
- los pasos constituyentes deben ser interpretables de manera directa e inequívoca 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 inequívoco (efectividad).
