En ciencias de la computación, un algoritmo voraz (también conocido como codicioso, goloso, ávido, devorador o greedy) es una estrategia de búsqueda por la cual se sigue una heurística consistente en elegir la opción óptima en cada paso local con la esperanza de llegar a una solución general óptima.
Este esquema algorítmico es el que menos dificultades plantea a la hora de diseñar y comprobar su funcionamiento.
Se utilizan generalmente para resolver problemas de optimización (obtener el máximo o el mínimo).
Toman decisiones en función de la información que está disponible en cada momento.
Una vez tomada la decisión, ésta no vuelve a replantearse en el futuro.
Por lo tanto, siempre habrá que estudiar la corrección del algoritmo para demostrar si las soluciones obtenidas son óptimas o no.
Se elimina ese elemento del conjunto de candidatos (
En caso de que así sea, se incluye ese elemento en