This is my main page created by Jacob Broomfield.
My webpage will serve as a portfolio for all my completed and future projects.
Problem description: Sudoku is a 9x9 grid split between collumns, rows and 9 3x3 blocks in which each cell within a collumn, row or block has a unique number from 1 to 9. The game is over once the entire grid filled in correctly. My aim is to take a sudoku grid with its given inputs and develop a program that will solve the grid displaying all the correct numbers to the user. I can use a range of techniques most notably, making use of notes.
Original method: My original strategy was to use well-known sudoku solving techniques, such as the final remaining cells and notes, to iteratively determine what goes where. However, this was not going to work with the more difficult sudoku grids.
New method: When using Sudoku solution methods alone, I discovered that the more difficult grids required a lot more heuristic thinking, which was impossible to implement. There was also some backtracking required, which meant I had to employ recursive functions. Although this is a brute force technique, ensuring that the notes you cycle through each iteration are valid notes can save time.
Pseudocode and steps: Here is the pseudocode for the main algorithm to follow, along with a list of smaller functions to implement which will assist you in building this program for yourself. The current algorithm solves easy to extreme grids within a second, but takes 5 minutes to fill in the grid with the correct data.
Working screenshots:
Description coming soon