Progz : [C] Résolution de sudoku

Cela fait un certains temps qu'il est terminé, mais je n'en avais encore jamais parlé. Il s'agit donc d'un programme pour résoudre une grille de sudoku. Capable de résoudre n'importe quelle grille, même si celle ci comporte plusieurs solutions dans la limite du temps que vous lui laissez. Pour résoudre une grille complexe à une solution, le système mettra généralement moins de 200ms sur un système classique, et peut monter jusqu'à 3 milliards d'années (estimation personnelle :-p), pour résoudre une grille totalement vide.

Le code est disponible avec, sous licence MIT. Je n'ai pas essayé de le compiler sous windows, mais ça devrait fonctionner aussi.
Plusieurs options disponibles, l'affichage des solutions, le simple comptage du nombre de solutions etc ...

Je sais que certains algorithmes existent et fonctionneraient mieux que le miens, mais j'ai voulu chercher par moi même la façon de résoudre la grille. Dans un premier temps on cherche les possibilités de chaque case, en les éliminant selon les règles du sudoku classique.
Puis s'il y a plusieurs possibilités, on passe en brute force, et on recommence selon les règles etc ... Ce qui dans le cas d'un sudoku à plusieurs (millions de) solutions peut s'avérer extrêmement long à calculer.

Télécharger le programme de résolution de sudoku

Ce programme fonctionne simplement en lignes de commandes, n'y cherchez donc pas d'interface graphique. :-X

Posté par Romain le 9 Août 2008 à 00h12

Commentaires

Aucun commentaire n'a encore été déposé.

Déposer un commentaire  :
 :

NOTE : l'adresse email est facultative et n'apparaîtra pas au public.

Votre message sera soumis à modération avant d'être publié.

 :

Catégories

Infos

Album Photos Sites Créés Liens Me contacter

Chargement... Twitter...

X.i.n.b.

Accueil - Connexion