您的位置:首页 > 其它

LeetCode 36. Valid Sudoku(数独游戏)

2016-05-20 10:38 465 查看
原题网址:https://leetcode.com/problems/valid-sudoku/

Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.

The Sudoku board could be partially filled, where empty cells are filled with the character
'.'
.



A partially filled sudoku which is valid.

Note:

A valid Sudoku board (partially filled) is not necessarily solvable. Only the filled cells need to be validated.
方法:按照行、列和格进行哈希统计。

public class Solution {
public boolean isValidSudoku(char[][] board) {
boolean[][] row = new boolean[9][9];
boolean[][] col = new boolean[9][9];
boolean[][][] grid = new boolean[3][3][9];
for(int i=0; i<9; i++) {
for(int j=0; j<9; j++) {
char ch = board[i][j];
if (ch == '.') continue;
if (row[i][ch-'1']) return false; else row[i][ch-'1']=true;
if (col[j][ch-'1']) return false; else col[j][ch-'1']=true;
if (grid[i/3][j/3][ch-'1']) return false; else grid[i/3][j/3][ch-'1']=true;
}
}
return true;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: