LeetCode: Sudoku Solver [036]
2014-05-19 22:46
197 查看
【题目】
Write a program to solve a Sudoku puzzle by filling the empty cells.Empty cells are indicated by the character
'.'.
You may assume that there will be only one unique solution.
A sudoku puzzle...
...and its solution numbers marked in red.
【题意】
解数独【思路】
DFS【代码】
class Solution { public: bool isValid(vector<vector<char> > &board, int i, int j){ //判断所在行 for(int col=0; col<9; col++){ if(col!=j && board[i][j]==board[i][col])return false; } //判断所在列 for(int row=0; row<9; row++){ if(row!=i && board[i][j]==board[row][j])return false; } //判断所在block int x=i/3*3; int y=j/3*3; for(int row=x; row<x+3; row++){ for(int col=y; col<y+3; col++){ if(row!=i && col!=j && board[i][j]==board[row][col])return false; } } return true; } bool sodoku(vector<vector<char> > &board){ for(int i=0; i<9; i++){ for(int j=0; j<9; j++){ if(board[i][j]=='.'){ for(int value=1; value<=9; value++){ board[i][j]='0'+value; if(isValid(board, i, j)&&sodoku(board))return true; board[i][j]='.'; } return false; } } } return true; } void solveSudoku(vector<vector<char> > &board) { sodoku(board); } };
相关文章推荐
- LeetCode:Sudoku Solver && Valid Sudouku
- LeetCode Sudoku Solver
- LeetCode OJ Sudoku Solver
- LeetCode(37)--Sudoku Solver
- Leetcode --Sudoku Solver
- Leetcode : Sudoku Solver
- LeetCode Sudoku Solver
- 【leetcode】 Sudoku Solver
- LeetCode: Sudoku Solver (数独求解)
- leetcode 93: Sudoku Solver (uncompleted.)
- [Leetcode]Sudoku Solver
- leetcode题集——sudoku-solver
- LeetCode "Sudoku Solver"
- leetcode 93: Sudoku Solver (uncompleted.)
- LeetCode Sudoku Solver
- leetcode Sudoku Solver
- leetcode Sudoku Solver 解法优化
- leetcode Sudoku Solver
- leetcode Sudoku Solver
- LeetCode Sudoku Solver