sudoku-variants
(florian1345)
documentation
https://docs.rs/sudoku-variants/
README
sudoku-variants
A flexible Sudoku engine for Rust that supports common variations and custom rules.
Features
- Parsing and printing Sudoku
- Checking validity of Sudoku and solutions according to standard rules as well as some common variants
- Injection of custom constraints
- Solving Sudoku using a perfect backtracking algorithm
- Generating Sudoku, with a possibility to specify a solver that has to be able to solve the result, thus controlling the difficulty
- Strategies that resemble human reasoning, which can be used to accelerate backtracking or to control the difficulty of generated Sudoku
- Definition of custom strategies
Planned Improvements
- Allow stateful constraints that can be reduced, such as Killer Sudoku
- Implement some more common constraints (e.g. Killer, Sandwich, Mini-Killer, maybe more)
- Improve the performance of the perfect backtracking solver
- Integrate with the Serde framework
- Enable non-standard topologies of Sudoku fields (e.g. dead cells, grids without blocks)
Links
Commit count: 181
cargo fmt