解法一:
class Solution {
public boolean isValidSudoku(char[][] board) {
ArrayList<HashSet<Character>> list = new ArrayList<>();
ArrayList<HashSet<Character>> list2 = new ArrayList<>();
ArrayList<HashSet<Character>> list3 = new ArrayList<>();
for (int i = 0; i < 9; i++) {
list.add(new HashSet<Character>());
list2.add(new HashSet<Character>());
list3.add(new HashSet<Character>());
}
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9; j++) {
if (board[i][j] == '.') continue;
if(list.get(i / 3 * 3 + j / 3).contains(board[i][j])) return false;
if(list2.get(j).contains(board[i][j])) return false;
if(list3.get(i).contains(board[i][j])) return false;
list.get(i / 3 * 3 + j / 3).add(board[i][j]);
list2.get(j).add(board[i][j]);
list3.get(i).add(board[i][j]);
}
}
return true;
}
}
4/17/26About 1 min