Sudoku

Overview:

For this implementation, I chose to implement a few different types of Sudoku solvers (brute force, greedy, and exact cover) to showcase the differences between them. Running the main method in each solver class will show a visualization of how the specific algorithm steps through the problem in the terminal. You can also change the delay variable to change how quickly each step is shown. A delay of 0 will not display a visualization. There are also short test classes written to test the code.

Implementations:

Showcase: