LeetCode刷题 36 有效的数独

Posted 欲穷千里目,更上一层楼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode刷题 36 有效的数独相关的知识,希望对你有一定的参考价值。

 

 

 

 思路:模拟

class Solution {
public:
    bool isValidSudoku(vector<vector<char>>& board) {
        int a[10];
        for(int i = 0; i < board.size(); ++i) {
            memset(a, 0, sizeof a);
            for(int j = 0; j < board[0].size(); ++j) {
                if(board[i][j] != \'.\') {
                    a[board[i][j] - \'0\']++;
                    if(a[board[i][j] - \'0\'] > 1) {
                        return false;
                    }
                }
            }
        }
        for(int i = 0; i < board.size(); ++i) {
            memset(a, 0, sizeof a);
            for(int j = 0; j < board[0].size(); ++j) {
                if(board[j][i] != \'.\') {
                    a[board[j][i] - \'0\']++;
                    if(a[board[j][i] - \'0\'] > 1) {
                        return false;
                    }
                }
            }
        }
        for(int k = 0; k < 9; k += 3) {
            for(int m = 0; m < 9; m += 3) {
                memset(a, 0, sizeof a);
                for(int i = k; i < k + 3; ++i) {
                    for(int j = m; j < m + 3; ++j) {
                        if(board[j][i] != \'.\') {
                            a[board[j][i] - \'0\']++;
                            if(a[board[j][i] - \'0\'] > 1) {
                                return false;
                            }
                        }
                    }
                }
            }
        }
        return true;
    }
};

 

以上是关于LeetCode刷题 36 有效的数独的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode刷题100天—36. 有效的数独(数组+哈希)—day26

Leetcode刷题100天—36. 有效的数独(数组+哈希)—day26

java刷题--36有效的数独

java刷题--36有效的数独

java刷题--36有效的数独

刷题笔记(数组)-11