File | Date | Author | Commit |
---|---|---|---|
.github | 2025-01-18 |
![]() |
[3ae032] Cron job |
python | 2025-01-13 |
![]() |
[a01644] Latest |
test_cases | 2025-01-14 |
![]() |
[aab3a2] Latest |
LICENSE | 2023-07-10 |
![]() |
[fb60a5] Create LICENSE |
LICENSE.md | 2025-01-17 |
![]() |
[675c17] Added License |
Makefile | 2025-01-18 |
![]() |
[a092b9] Latest |
README.md | 2025-01-18 |
![]() |
[332103] Latest |
SudokuSolver.vcxproj | 2025-01-18 |
![]() |
[af2312] Latest |
app.ico | 2025-01-16 |
![]() |
[1e5010] Icon First Test |
app.rc | 2025-01-16 |
![]() |
[731c6a] Latest |
compile.sh | 2025-01-18 |
![]() |
[c49552] Latest |
generatepuzzle.cpp | 2025-01-18 |
![]() |
[f6d8ef] Latet |
generatepuzzle.h | 2025-01-18 |
![]() |
[3bebdf] Latest |
main.cpp | 2025-01-18 |
![]() |
[d7b2fe] Latest |
resource.h | 2025-01-16 |
![]() |
[731c6a] Latest |
sudoku.cpp | 2025-01-17 |
![]() |
[a784a0] Bug fixes |
sudoku.h | 2025-01-18 |
![]() |
[031da6] Generate Puzzle Beta Feature |
win_main.cpp | 2025-01-18 |
![]() |
[df79ae] Some text editing |
An interactive Sudoku solver implemented in both C++ and Python, featuring a user-friendly ncurses interface for puzzle input and visualization. The C++ implementation offers robust solving capabilities with multiple advanced techniques, while the Python version serves as a basic prototype.
There are two main C++ versions: a CLI version written in Ncurses and a GUI version designed for Microsoft Windows. Both C++ versions (Windows and CLI) can also generate puzzles to be solved.
Make (optional, for compilation)
For C++/Windows version:
msbuild
For Python version (prototype):
git clone https://github.com/jasonbrianhall/sudoku_solver.git
cd sudoku_solver
chmod +x compile.sh
./compile.sh
Or manually compile:
g++ main.cpp sudoku.cpp generatepuzzle.cpp -lncurses -o sudoku_solver
Or with Make Script:
make
For Windows Version:
msbuild /p:Configuration=Release /p:Platform=x64 SudokuSolver.vcxproj
The Python version is a prototype with limited functionality and doesn't require compilation. For the best solving experience, use the C++ implementation. The Python version only has basic algorithms implemented, while the C++ versions (Windows and UNIX) can solve extreme puzzles using advanced algorithms.
For C++ version:
./sudoku_solver
For Python version (prototype):
python3 sudoku_solver.py
For Windows Version:
sudoku_solver
The solver implements several Sudoku solving techniques of increasing complexity:
Line Elimination (L): Identifies unique candidates in rows, columns, and boxes
Advanced Techniques:
For the most efficient solving experience:
Pressing (A) for All Algorithms implements this strategy automatically.
The solver has been tested successfully against https://sudoku.com/extreme/ puzzles with a high success rate and can solve puzzles rated as "Expert" difficulty.
board[9][9][9]
to track possible valuesReal-time logging of solving steps
Python Implementation (Prototype):
The C++ implementation offers comprehensive solving capabilities suitable for most standard and advanced Sudoku puzzles. The Python version is a prototype and may struggle with more complex puzzles.
Contributions are welcome! Here are some ways you can help:
This project is open source and available under the MIT License.
sudoku | sudoku solver | logic puzzle | puzzle game | puzzle solver | brain teaser | number puzzle
c++ | cpp | python | ncurses | terminal ui | tui | command line interface | cli | cross-platform | windows
This is an open-source Sudoku solver implementing advanced solving techniques through a terminal-based and GUI interface, available in both C++ and Python. Perfect for puzzle enthusiasts, developers learning algorithm implementation, or anyone interested in logic puzzle solving techniques.