1procedure nQueens(board, row)
2 if row = n then
3 solution found!
4 for col ← 0 to n-1 do
5 if isSafe(board, row, col) then
6 place queen at (row, col)
7 nQueens(board, row + 1)
8 remove queen from (row, col)
9procedure isSafe(board, row, col)
10 check column, diagonals for conflicts