Sudoku Solver

Ein Sudoku-Löser, den ich ursprünglich in der Programmiersprache Python und dann erneut in Kotlin programmiert habe. Durch Ausführen von SudokuSolver.jar wird das Programm gestartet. Dann kann ein Sudoku eingegeben werden, das durch einem Klick auf Solve gelöst wird, sofern es lösbar ist, und sonst wird angezeigt, dass keine Lösung existiert.

Wird zusätzlich auch die Datei input.txt heruntergeladen und im gleichen Ordner wie SudokuSolver.jar gespeichert, so kann mit Load from input.txt das in der Datei gespeicherte Sudoku geladen werden. Mit Save to output.txt wird das aktuell angezeigte Sudoku in einer Datei namens output.txt gespeichert.

In input.txt ist standardmäßig ein Sudoku mit 17 vorgegebenen Zahlen gespeichert (das ist die für die eindeutige Lösbarkeit mindestens erforderliche Anzahl), bei dem das Lösen unter allen getesteten (lösbaren) Sudokus durchschnittlich am längsten gedauert hat, nämlich ca. 0.03 bis 0.05 Sekunden. Zum Vergleich: in meiner ursprünglichen in Python programmierten Version waren es zunächst durchschnittlich 0.5 Sekunden, und nach ein paar Verbesserungen schlussendlich ca. 0.2 Sekunden.

SudokuSolver herunterladen:

Für die aktuelle Version wird das Java Runtime Environment (JRE) benötigt. Falls es nicht bereits installiert ist, kann es unter https://www.java.com/download/ heruntergeladen werden.

Zum Herunderladen muss nur auf die jeweilige Schaltfläche geklickt werden. Dann öffnet sich eine Google Drive-Seite, bei der sich oben rechts eine Schaltfläche mit einem Download-Pfeil befindet. Dort kann die Datei heruntergeladen werden. Falls es sich um eine ZIP-Datei handelt (siehe unten), muss sie dann noch entpackt werden (siehe z. B. hier).

Alte Version (Python) herunterladen:

Screenshot: