Algoritmo de força bruta para criação do Quadro de Sudoku

O que estou desenvolvendo é que, inicialmente, todo o quadro de sudoku está vazio. Uma das células aleatórias (de 81) é preenchida com um valor aleatório (1-9).

Agora eu quero preencher todas as células restantes usando a abordagem de força bruta.
Pelo que soube depois de pesquisar no Google, devemos começar com a primeira célula e preenchê-la com 1 (se for válida), depois preencher a segunda célula com 2 (se for válida, começaremos a verificar com um número maior que o última célula preenchida, que neste caso é 1, quando atingimos 9, redefinimos com 1).

O problema é que não está funcionando corretamente!

Alguém pode me vincular ao algoritmo exato.

questionAnswers(6)

yourAnswerToTheQuestion