Algoritmos

10.06.2014 20:34
¿Qué es un algoritmo y para que sirve?
Es un conjunto ordenado y finito de operaciones que permite hallar la solución de un problema. Es decir, que un algoritmo es un método para encontrar la solución a algún problema. Los algoritmos son el objeto de estudio de la algoritmia y su definición queda formalizada por el modelo computacinal de la Máquina de Turing. Su importancia radica en mostrar la manera de llevar a cabo procesos y resolver típicamente problemas matemáticos (o de otro tipo). Al igual que las funciones matemáticas, los algoritmos reciben una entrada y la transforman en una salida ("efecto caja negra"). Sin embargo, para que un algoritmo pueda ser considerado como tal, debe ser determinista (definido), finito y eficiente. Por eficiente se entiende que las instrucciones encuentran la solución en el menor tiempo posible; finito implica que tiene un determinado número de pasos, es decir, que termina; y determinista, que si se sigue el mismo proceso más de una vez se llega siempre al mismo resultado. El concepto de algoritmo, aunque similar y obviamente relacionado, no debe confundirse con el concepto de programa. Mientras el primero es la especificación de un conjunto de pasos (operaciones, instrucciones, órdenes, ...) orientados a la resolución de un problema, el segundo es ese conjunto de operaciones especificadas en un determinado lenguaje de programación y para un computador concreto, susceptible de ser ejecutado (o compilado o interpretado). Un algoritmo, estrictamente hablando, no puede ejecutarse hasta que no se implementa, ya sea en un lenguaje de programación, en un circuito eléctrico, en un aparato mecánico, usando papel y lápiz o en algún otro modelo de computación.
 
CARACTERÍSTICAS FUNDAMENTALES
  • SER DEFINIDO: cada paso del algoritmo debe indicar la acción a realizar sin criterios de interpretación.
  • SER FINITO: un número específico y numerble de pasos debe componer al algoritmo, el cual deberá finalizar al completarlos.
  • TENER CERO O MÁS ENTRADAS: datos son proporcionados a un algoritmo como insumo para llevar a cabo las operacioes que comprende
  • TENER UNA O MÁS SALIDAS: debe siempre devolver un resultado; de nada sirve un algoritmo que hace algo y nunca saber que fue.
  • EFECTIVIDAD: el tiempo y esfuerzo por cada paso realizado debe ser preciso, no usando nada más ni nada menos que aquello que se requiera para y en su ejecución.