Intro trabajo de algortmo
Hasta ahora se han realizado algunos comentarios respecto a la necesidad de diseñar algoritmos correctos y eficientes utilizando los elementos de un lenguaje deprogramación. El acto de diseñar algoritmos puede considerarse como una tarea que difícilmente podrá ser del todo automatizada. Todo problema es un reto para el diseñador: algunos resultan inmediatos deresolver, otros son bastante complejos. La investigación en esta área ha permitido descubrir un conjunto de métodos o esquemas de diseño hacia los cuales puede orientarse la realización de muchos algoritmos.No obstante, y a pesar de que resulta más adecuado en bastantes casos utilizar algunos de estos esquemas que realizar un diseño “desde cero”, idear un algoritmo continúa siendo una labor bastantecreativa donde los conocimientos y la experiencia del propio diseñador tienen un papel fundamental.
Dos técnicas de las más usadas en la práctica son divide y vencerás y el método voraz.
Divide yvencerás: Consiste en descomponer un problema en subproblemas, resolver independientemente los subproblemas para luego combinar sus soluciones y obtener la solución del problema original. Esta técnica sepuede aplicar con éxito a problemas como la multiplicación de matrices, la ordenación de vectores, la búsqueda en estructuras ordenadas, etc.
Como ejemplo sencillo de aplicación de esta estrategia puedeconsiderarse la búsqueda de una palabra en un diccionario de acuerdo con el siguiente criterio. Se abre el diccionario por la página central (quedando dividido en dos mitades) y se comprueba si lapalabra aparece allí o si lexicográficamente es anterior o posterior. Si no se ha encontrado y es anterior, se procede a buscarla en la primera mitad; si es posterior, se buscará en la segunda mitad. Elprocedimiento se repite sucesivamente hasta encontrar la palabra o decidir que no aparece.
Método Voraz: Este método trata de producir algún tipo de mejor resultado a partir de un conjunto de...
Regístrate para leer el documento completo.