Está en la página 1de 1

Resumen de Tarea

Divide y Vencers:
Este mtodo est basado en la resolucin recursiva de un problema dividindolo en dos o ms
problemas que mantengan una relacin, o que sean de igual tipo. El proceso contina hasta
que stos llegan a ser lo suficientemente sencillos como para que se resuelvan directamente.
Al final, las soluciones a cada uno de los subproblemas se combinan para dar una solucin al
problema original.
Un ejemplo de este algoritmo podemos encontrarlo en el siguiente cdigo donde las
funciones regresan la posicin en la que se encuentra el dato buscado, o un -1 si el dato no
est.
int binaria(int izq, int der, int x, int l[])
{
int med;

if (izq < der) {
med = (izq + der)/2;
if (l[med] < x)
return binaria(med, der, x, l);
else return binaria(izq, med, x, l);
} else if (l[izq] == x)
return izq;
else return -1;
}
VueIta Atrs o Backtracking:
os algoritmos conocidos como vuelta atrs o retroceso tratan de recorrer el espacio completo
de las soluciones posibles al problema planteado.
Muchas veces este tipo de algoritmos al utilizarlo puede resultar totalmente ineficiente pero, en
ocasiones es el nico camino posible.
El algoritmo bsico de vuelta atrs es el siguiente:
1. Tomar una opcin de entre las posibles
2. Para cada eleccin, considerar toda opcin posible recursivamente
3. Devolver la mejor solucin encontrada

También podría gustarte