05 26 2020 Diseño de algoritmos - MatRJ08/Portafolio_DatosII GitHub Wiki
Bitácora
Diseño de ALGORITMOS
- Técnicas
- Divide y vencerás
- Las demás quedan para la siguiente clase
Apuntes
Proceso de diseñar un algoritmos
- Formular el problema con suficiente precisión matemática. Se empieza a pensar que algoritmos resolverían al problema
- Diseño del algoritmo solución
- Evaluó mi solución mediante el análisis de algoritmos
Técnicas
Divide y vencerás
Dividir: Primer paso descomponer el programa grande en pequeñas partes
Conquistar: resolver los problemas pequeños en cada parte recursmivamente
Combinar
Características
- Sub-problemas independiente
- Recursivos
- Son bastante eficiente
- Se pueden utilizar de forma paralela
Ventajas
- Elegantes
- Simples
- Fácil de dar mantenimiento
Desventajas
- Gran tiempo en ejecución
Ejemplo
- Busqueda Binaria
- Merge sort
- Quicksort
- Strassen
- Karatsuba
Backtracking
Programacion Dinamica
Algoritmos heuristicos
- Genéticos
- Algoritmos voraces
Algoritmos Probabilisticos
Buscar y entender algoritmos divide y vencerás como el Strassen o el Karatsuba