Several different approaches to solve a sudoku puzzle using recursive backtracking