

bool isValidSudoku(vector<vector<char>>& board) {
vector<unordered_map<char,int>> rows(9),cols(9),boxs(9);
for(int i=0;i<9;++i){
for(int j=0;j<9;++j){
char c = board[i][j];
int index = (i/3)*3+j/3;//所在宫的序号
if(c != '.'){
if(rows[i].count(c) || cols[j].count(c) || boxs[index].count(c))
return false;
rows[i][c]=1;
cols[j][c]=1;
boxs[index][c]=1;
}
}
}
return true;
}
本文介绍了一种使用哈希表来验证数独盘面是否有效的算法。通过遍历数独的每一行、每一列及每一个小九宫格,并检查每个数字是否重复出现,实现了高效的数独有效性验证。
255

被折叠的 条评论
为什么被折叠?



