Skip to content

moizmoizmoiz/su-do-ku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

20 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Rust Sudoku Solver ๐Ÿฆ€

I should write a Sudoku solver
Image credit: t-dillon.github.io/tdoku

This is my first ever Rust project, written completely with my own sweat and blood.
Written in pure Rust, as a way to kickstart my Rust learning journey, a milestone project that helped me understand ownership, borrowing, and lifetimes better. After hours of arguing with the compiler and digging into the borrow checker docs, I finally managed to rewrite the Sudoku solving algorithm.

The implementation uses the classic backtracking algorithm to solve Sudoku puzzles, (labelled as LeetCode - Hard problem.)


Future Work

  • Optimize the algorithm:
    • Use candidates instead of brute force.
    • Start with cells that have the least number of candidates.
    • Update candidate sets after a successful propagation.
    • Dancing link algorithm.
    • Constraint propagation
  • Deploy this solver as a binary service. Finally,
  • Generate 5M puzzles and solve them ๐Ÿ˜Š - https://norvig.com/sudoku.html

Thank you @MusabZamann for the motivation and maa, the sudoku addict, for the inspiration.

About

Rust toy project (without any walkthroughs)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages