For a school project, I did a lot of research on both sudoku generators and sudoku solvers. Above is the video I ended up with for my presentation.
For my research on sudoku generation, click here.
For my research on sudoku solving, click here.
What I ended up doing, as demonstrated in the video above, was a brute force method of sudoku solving, employing recursion to test numbers until a valid solution was produced. The project was completed in Java 8.