Snudoku is a Sudoku
solver which solves a standard 9*9 Sudoku with 9 3*3 Sections. Snudoku has been written using C++ and compiled using the gcc compiler provided by Cygwin.
The algorithm used is a custom algorithm which Karthik NS has developed over the course of solving several Sudoku's in the Easy and Medium variants. It is an intuitive algorithm which tries to solve the Sudoku just the same way as one approaches it with the only difference being that the computer is faster and has persistence storage. This due to the fact that Sudoku solvers might miss some of the commonly tested methods.
The algorithm works through bubbling out a number to the Sudoku based on a presence array. It does not use a guessing approach.
The key to designing a successful Sudoku solver is the debug mechanism. The first attempt at attempting the Sudoku solver was a failure owing to the fact that the it was hard to find what was going wrong. Snudoku offers functionality to create a dump of the Sudoku grid and the Presence information in the form of a text file that can later be analyzed to find what's going wrong.
- Snudoku can be improved further to solve harder Sudoku by adding enhancements to the existing algorithm.
- The various techniques used can be made more efficient.