36.有效的数独

题目来源:

        leetcode题目,网址:36. 有效的数独 - 力扣(LeetCode)

解题思路:

       逐个判断是否满足该条件即可。

解题代码:

class Solution {
public:
    bool isValidSudoku(vector>& board) {
        if(!isValidCol(board)){
            return false;
        }
        if(!isValidRow(board)){
            return false;
        }
        if(!isValidGrid(board)){
            return false;
        }
        return true;
    }
    bool isValidGrid(vector>& board){
        for(int i=0;i set;
                for(int m=0;m<3;m++){
                    for(int n=0;n<3;n++){
                        if(board[i+m][j+n]=='.'){
                            continue;
                        }
                        if(set.count(board[i+m][j+n])>0){
                            return false;
                        }
                        set.insert(board[i+m][j+n]);
                    }
                }
            }    
        }
        return true;
    }
    bool isValidRow(vector>& board){
        for(int j=0;j set;
            for(int i=0;i>& board){
        for(int i=0;i set;
            for(int j=0;j
 
  

总结:

         刚开始以为每个九宫格都有判断一次,后来才发现九宫格无重叠。

        官方题解是一次遍历。


你可能感兴趣的:(#,C++,LeetCode,C++)