Hexadecimal Sudoku

For one of the last few assignments for ICS 211, we had to create a sudoku solver using recursion. If given an input of an array of array of numbers, it should recursively solve the puzzle by “brute force” methodology. If there were any missing or invalid values, the program should fill in the function with valid numbers and still complete the sukoku puzzle. It should then print the sudoku puzzle as an actual board in the console. If the puzzle is unsolvable then the function would quit and the console would print unsolveable.

This project was a milestone for me, as this project challenged my current knowledge of Java at the time. Recursion was a difficult concept to wrap my head around since it was so hard to keep track of, and it was a difficult bit to write out. Of all the assignments we worked on this semester, this was the most interesting. One of the test cases took almost an hour to solve! I remember when I found the solution, I was so happy it worked that I rewarded myself with a hearty nap.