Algunas técnicas aplicadas en programación
División y conquista: una técnica que permite descomponer un problema complejo en subtareas más sencillas y resolverlas de forma independiente.
Programación dinámica: una técnica que permite resolver problemas en tiempo polinomial utilizando una memoria extra y guardando los resultados parciales.
Programación voraz: una técnica que permite resolver problemas en tiempo polinomial utilizando una estrategia óptima local en cada paso.
Programación exacta: una técnica que permite resolver problemas en tiempo polinomial utilizando algoritmos de búsqueda exhaustiva o aproximación.
Búsqueda en profundidad: una técnica de búsqueda que explora todas las posibles soluciones en un árbol de búsqueda.
Programación lineal: una técnica que permite resolver problemas en tiempo polinomial utilizando un modelo matemático y un algoritmo de resolución.
Programación entera: una técnica que permite resolver problemas en tiempo polinomial utilizando un modelo matemático y un algoritmo de resolución, pero restringiendo la solución a valores enteros.
Programación cuadrática: una técnica que permite resolver problemas en tiempo polinomial utilizando un modelo matemático y un algoritmo de resolución, pero restringiendo la solución a valores que cumplan una cierta propiedad cuadrática.
Algoritmos genéticos: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque inspirado en la selección natural y la reproducción de la vida real.
Algoritmos de búsqueda local: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que explora una vecindad local de la solución actual.
Algoritmos de búsqueda global: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca la mejor solución en todo el espacio de búsqueda.
Algoritmos de búsqueda heurística: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que utiliza una función heurística para guiar la búsqueda.
Algoritmos de búsqueda probabilística: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que utiliza una distribución de probabilidad para guiar la búsqueda.
Algoritmos de búsqueda exhaustiva: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que explora todas las posibles soluciones.
Algoritmos de búsqueda aproximada: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca una solución aproximada al problema.
Algoritmos de búsqueda determinista: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que garantiza encontrar una solución óptima si existe.
Algoritmos de búsqueda no determinista: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que no garantiza encontrar una solución óptima.
Algoritmos de búsqueda en estado cerrado: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que mantiene una lista de estados explorados y evita explorar estados duplicados.
Algoritmos de búsqueda en estado abierto: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que mantiene una lista de estados por explorar y los actualiza dinámicamente.
Algoritmos de búsqueda en grafos: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que explora los nodos y aristas de un grafo.
Algoritmos de búsqueda en árboles: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que explora los nodos de un árbol.
Algoritmos de búsqueda en espacios de estados: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que explora los diferentes estados de un sistema.
Algoritmos de búsqueda en busca de la mejor solución: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca la mejor solución posible.
Algoritmos de búsqueda en busca de la primera solución: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca la primera solución que encuentre.
Algoritmos de búsqueda en busca de todas las soluciones: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca todas las soluciones posibles.
Algoritmos de búsqueda en busca de un número determinado de soluciones: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca un número determinado de soluciones.
Algoritmos de búsqueda en busca de soluciones cercanas: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca soluciones que sean cercanas a una solución dada.
Algoritmos de búsqueda en busca de soluciones óptimas: una técnica que permite resolver problemas en tiempo polinomial utilizando un enfoque que busca soluciones que sean óptimas en un sentido dado.