adding documentation

This commit is contained in:
Melvyn
2025-01-28 12:43:19 +01:00
parent 6801bd2efc
commit c7217894b2
4 changed files with 160 additions and 22 deletions

View File

@@ -12,11 +12,15 @@ import java.util.logging.Level;
import java.util.logging.Logger;
public class Solver {
/**
* Log du Solver, qui garde trace des actions réalisées.
*/
private static final Logger logger = Logger.getLogger("SolverLogger");
/**
* Résout le multidoku passé en paramètre si c'est possible.
* En testant toutes les possibilités, de manière aléatoire, avec un algorithme
* Résout, si possible, le multidoku passé en paramètre
* en testant toutes les possibilités, de manière aléatoire, avec un algorithme
* de backtracking.
*
* @param doku Multidoku, à résoudre
@@ -59,6 +63,11 @@ public class Solver {
return false;
}
/**
* Compte le nombre de solutions possibles au MultiDoku passé en paramètres.
* @param doku MultiDoku, MultiDoku dont on veut le nombre de solutions.
* @return int, nombre de solutions possibles.
*/
public static int countSolution(MultiDoku doku) {
int result = 0;
@@ -85,6 +94,11 @@ public class Solver {
return result;
}
/**
* Résout le MultiDoku passé en paramètre.
* @param doku MultiDoku, MultiDoku à résoudre.
* @return boolean, valant true si le MultiDoku est résolu, false sinon.
*/
public static boolean solve(MultiDoku doku) {
if (Thread.interrupted())
throw new CancellationException("User wants to stop the solver");