Es un modelo de BackTracking realizado por mi universidad https://github.com/migueltoro/apunte...goritmoBT.java.
Código java:
Ver original
private 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