Optimizing the backtracking algorithm solving Sudoku
I'm hoping to optimize my backtracking algorithm for my Sudoku Solver. What it does now: The recursive solver function takes a sudoku puzzle with various given values. I will scour through all the empty slots in the puzzle, looking for the slot that has the least possibilities, and get the list of values. From the list of values, I will loop through it by placing one of the values from the list in the slot, and recursively solve it, until the entire grid is filled. This implementation still takes incredibly long for some puzzles and I hope to further optimize this. Does anyone have any ideas