¿Qué es un Algoritmo?
Es un conjunto de pasos secuenciales y ordenados que permiten lograr un objetivo. Que sean pasos secuenciales significa que deben ser ejecutados uno después de otro y que sean pasos ordenados quiere decir que deben llevar un orden cuasi-obligatorio (u obligatorio en algunos casos). De tal forma que el algoritmo permite lograr un objetivo. Es decir, éste, es el camino que se necesita para lograrlo.
Los algoritmos pueden ser o muy sencillos tales como lavarse las manos, abrir una puerta con llaves, cepillarse los dientes, encender una vela, hacer deporte, hasta los más complejos como desarrollar un algoritmo que permita desarrollar algoritmos.
Como todo dentro del conocimiento humano requiere de una clasificación. El algoritmo se puede clasificar dentro de 2 conceptos
1. Algoritmos Informales
Definido como todos aquellos algoritmos que no son realizables a través de un computador o al menos no fácilmente. Son aquellos algoritmos en donde el ejecutor real es el ser humano, como el algoritmo ejemplo de freír un huevo, conseguir un libro, aprobar un examen, etc.
De manera que vamos considerando los algoritmos informales como aquellos que son realizados preferiblemente por humanos.
2. Algoritmos Computacionales
Es una secuencia de instrucciones finitas que son ejecutados por un computador, u ordenador, para aprovechar su velocidad de procesamiento y su objetivo es dar respuesta a un problema determinado. Por ejemplo el algoritmo que genere los primeros 100 números primos, teniendo en cuenta que un numero primo es aquel que solo puede ser dividido entre la unidad y entre sí mismo.
Los algoritmos computacionales son muy importantes ya que permiten al programador resolver un problema antes de escribirlo en un lenguaje de programación que entienda la maquina.
El algoritmo consta de 3 partes:
Entrada: Son todos los datos que sean introducidos necesarios para operar
Procesamiento: Son los cálculos realizados con los datos que ya tenemos
Salida: Es el resultado obtenido en el procesamiento de datos.
Las características de los algoritmo son:
Secuencia: ya que cada instrucción se procesa uno después de otro
Precisión: deben ser objetivos al resolver problemas
Ordenados: leídos y ejecutados en orden
Finitos: Deben tener un numero determinado de pasos
Concretos: Deben mostrar un resultado a un problema resulto
Definidos: ante los mismo inputs, obtener outputs.
En conclusión
Un algoritmo debe ser suficiente para resolver un problema, y ante varios algoritmos que resuelvan el mismo problema, hay que escoger el algoritmo mas eficiente.