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.
public class Solution { public void solveSudoku(char[][] board) { solve(board); } private boolean solve(char[][] board) { for (int i=0; i<9; ++i) { for (int j=0; j<9; ++j) { if ('.' == board[i][j]) { for (int k=1; k<=9; ++k) { board[i][j] = (char)('0'+k); if (validate(board, i, j) && solve(board)) return true; } board[i][j] = '.'; return false; } } } return true; } private boolean validate(char[][] board, int x, int y) { for (int i=0; i<9; i++) if (i!=x && board[i][y]==board[x][y]) return false; for (int j = 0; j<9; j++) if (j!=y && board[x][j]==board[x][y]) return false; for (int i=3*(x/3); i<3*(x/3)+3; i++) for (int j=3*(y/3); j<3*(y/3)+3; j++) if (i!=x && j!=y && board[i][j]==board[x][y]) return false; return true; } }
相关推荐
A Sudoku solver implemented in C++. It can solve a given Sudoku problem, or count the possibilities for all valid Sudoku grids.
A Matlab based realtime sudoku solver using Support Vector Machines (SVM)
matlab开发-SudokuSolver。此函数将求解标准的9乘9数独矩阵
cd SudokuSolver conda create env -f sudoku-env.yml conda activate sudoku-env 视觉功能仅适用于Chrome。 要测试IPython中的功能,请运行: from src . sudoku import sudoku sudoku () 将弹出一个Chrome窗口...
Matrix Sudoku Solver 解独矩阵是一款计算机模拟人工思路求解数独的程序。它能利用大部分的人工解法完成对简单、中等、困难、专家以及骨灰级的数独求解。玩家可以将需要求解的数独输入矩阵后,按照提示或结合逻辑...
数独解算器Sudoku Solver项目
$ cd sudokuSolver 脚手架 sudokuSolver ├── controllers | └── puzzle-string.js | └── sudoku-solver.js ├── public │ └── index.js │ └── style.css ├── routes | └
python sudoku求解器是作为第一年的工程项目而完成的,它是用python编程的,它允许用户输入一个未解决的sudoku .txt文件,然后它会对其进行求解,并以用户友好的gui形式将已解决的sudoku呈现给用户。
SudokuSolver与图像处理通过自定义OCR下载的所有文件,并确保目录不改变使用main.py文件来执行代码其他Python文件是强制使用与该链接数据训练main.py OCR 您可以在Sudoku解算器中找到带有图像处理docx文件的详细报告
Sudoku Solver 1.0几乎立即可以解决9x9 Sudokus。 它使用推论和回溯。
解决数独难题。 支持快速解决方案模式和逐步训练模式。
SudokuSolver
SudokuSolver 不进行猜测,它只应用策略来尝试找到所有可能的组合。 但是,这意味着如果一个问题存在多个解决方案,则将找不到任何解决方案。基本用法可以在找到如何使用数独求解器的示例。执照该程序是公共领域。 ...
数独解算器 在线教程后,使用Pygame的GUI Sudoku Solver :)对主要的求解算法使用了递归和回溯。除了自动求解外,用户还可以玩游戏。
数独解算器我的Sudoku Solver解决方案在Java中使用回溯算法实现