CARACTERÍSTICAS DE LOS ALGORITMOS
Enviado por robinson.alcaino • 9 de Marzo de 2016 • Tarea • 674 Palabras (3 Páginas) • 547 Visitas
Algoritmos
Robinson Alcaino Mella
Estructuras de datos
Instituto IACC
07-11-2015
Desarrollo
La resolución de un determinado problema, aplicando un planteamiento informático, sigue una serie de etapas o procesos.
CARACTERÍSTICAS DE LOS ALGORITMOS
Los algoritmos deben cumplir con una serie de características, las que se mencionan y revisan a continuación:
- Finitud: El algoritmo debe tener o presentar su fin tras un número definido y razonable de pasos.
- Precisión: Cada paso de un algoritmo debe estar definido de manera precisa y sin ambigüedades. Por eso debe evitarse el uso del lenguaje natural, ya que es muy impreciso; así, es costumbre que los algoritmos se materialicen a través de lenguajes más formales, tales como el matemático o algún lenguaje de programación para computadores.
- Entrada: El algoritmo tiene cero o más entradas, cantidades que le son dadas antes de que comience. Estas entradas pertenecen a conjuntos específicos de objetos (cadenas de caracteres, números enteros, naturales, fraccionarios).
- Salida: El algoritmo tiene una o más salidas, que son el resultado de la aplicación de los pasos en él definidos.
Los algoritmos de programación requieren, en general, de una organización bastante compleja de los datos con los cuales deben trabajar y, por tanto, es necesario realizar un estudio previo de las estructuras de datos fundamentales con las cuales operar. Dichas estructuras también se pueden implementar y declarar de diferentes maneras dependiendo del lenguaje seleccionado.
Evidentemente, estructuras de datos adecuadas hacen la diferencia entre diseñar algoritmos de programación triviales o complejos. Se puede dar el caso de que un algoritmo de programación muy complejo pueda usar estructuras de datos bastante simples y viceversa.
Las características de un buen algoritmo son las siguientes:
- Corrección o eficacia: el algoritmo debe funcionar.
- Eficiencia: el algoritmo no debe desaprovechar recursos.
- Claridad: el algoritmo debe estar bien documentado.
Mencione al menos tres diferencias entre las técnicas divide y vencerás, método voraz y técnica Top-Down para el diseño de algoritmos.
Existen varias técnicas que se pueden seguir para enfrentar y resolver un determinado problema a través de la implementación de algoritmos, cada una con sus ventajas, desventajas y complejidades particulares.
DIVIDE Y VENCERÁS
Consiste en descomponer un problema en pequeños subproblemas. Posteriormente, la técnica invita a resolver independientemente los subproblemas, para luego combinar sus soluciones y obtener una solución del problema original.
La idea de usar este método es reducir una multiplicación de cuatro cifras a 4 multiplicaciones de 2 cifras y 3 sumas.
- Descomponer el problema a resolver en un determinado número de subproblemas más pequeños, del mismo tipo.
- Resolver de forma sucesiva e independiente todos los subproblemas.
- Combinar las soluciones obtenidas para obtener la solución del problema original.
MÉTODO VORAZ
Esta técnica trata de producir e identificar el mejor resultado a partir de un conjunto de opciones candidatas. Para ello, se procede paso a paso, realizando la mejor elección (utilizando una función objetivo que respeta un conjunto de restricciones) entre las posibles alternativas.
...