Antes que nada, durante todo este tiempo atrás he estado usando este modelo para resolver mis problemas con BackTracking.
Es un modelo de BackTracking realizado por mi universidad
https://github.com/migueltoro/apunte...goritmoBT.java.
Código java:
Ver originalprivate void bt() {
if(estado.isFinal()){
actualizaSoluciones();
if(AlgoritmoBT.soloLaPrimeraSolucion && solucion!=null) exito = true;
if(!AlgoritmoBT.soloLaPrimeraSolucion && soluciones.size()>=AlgoritmoBT.numeroDeSoluciones) exito = true;
} else {
for(A a: filtraRandomize(estado,estado.getAlternativas())){
if(isMin() && estado.getObjetivoEstimado(a) >= mejorValor) continue;
if(isMax() && estado.getObjetivoEstimado(a) <= mejorValor) continue;
estado.avanza(a);
bt();
estado.retrocede(a);
if (exito) break;
}
}
}
Ejemplo: Como resolver el problema de las reinas con el modelo mencionado anteriormente
https://github.com/migueltoro/apunte...oReinasBT.java
Una vez leído lo anterior, comienzo la razón por la cual he creado este post.
-----------------------------------------------------------------------------------------------------------------------
He realizado dos ejercicio y quiero publicarlo para que me deis vuestra opinión:
Ejercicio 1: Enunciado: Test: https://pastebin.com/D51K8QPi Algoritmo: https://pastebin.com/uecFRwK5 Ejercicio 2: Enunciado: Test: https://pastebin.com/q94hPHvW Algoritmo: https://pastebin.com/ZL6f82gk