回溯法解决数独问题:核心代码:
bool solveSudoku(vector<vector<char>> &board, int i, int j)
{
if(i==9) return true;
if(j==9) return solveSudoku(board, i+1, 0);
if(board[i][j] != '.') return solveSudoku(board, i, j+1);
for(int c=1; c<=9; c++)
{
if(validsodu(board, i, j, c))
{
board[i][j] = c+'0';
if(solveSudoku(board, i, j+1)) return true;
board[i][j] = '.';
}
}
return false;
}