leetcode-----36. 有效的数独
Posted 景云
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode-----36. 有效的数独相关的知识,希望对你有一定的参考价值。
代码
class Solution {
public:
bool isValidSudoku(vector<vector<char>>& board) {
bool st[9];
// 行
for (int i = 0; i < 9; ++i) {
memset(st, 0, sizeof st);
for (int j = 0; j < 9; ++j) {
if (board[i][j] != ‘.‘) {
int t = board[i][j] - ‘1‘;
if (st[t]) return false;
st[t] = true;
}
}
}
// 列
for (int i = 0; i < 9; ++i) {
memset(st, 0, sizeof st);
for (int j = 0; j < 9; ++j) {
if (board[j][i] != ‘.‘) {
int t = board[j][i] - ‘1‘;
if (st[t]) return false;
st[t] = true;
}
}
}
// 小方格
for (int i = 0; i < 9; i += 3) {
for (int j = 0; j < 9; j += 3) {
memset(st, 0, sizeof st);
for (int x = 0; x < 3; ++x) {
for (int y = 0; y < 3; ++y) {
if (board[i + x][j + y] != ‘.‘) {
int t = board[i + x][j + y] - ‘1‘;
if (st[t]) return false;
st[t] = true;
}
}
}
}
}
return true;
}
};
以上是关于leetcode-----36. 有效的数独的主要内容,如果未能解决你的问题,请参考以下文章
[JavaScript 刷题] 矩阵 - 有效的数独, leetcode 36