36.有效的数独 --枚举

这道题仅仅是判断是否能解开数独 不要求解出来


class Solution {
    public boolean isValidSudoku(char[][] board) {
        for(int i = 0 ; i < 9  ;i++) {
            for(int j = 0 ; j < 9 ; j++) {
                char temp = board[i][j];
                board[i][j]='.';
                for(int x = 0 ; x < 9 ;x++) {
                        if(board[i][x]==temp||board[x][j]==temp)
                            return false;
                }
                for(int x = 0 ; x < 3 ; x++) {
                    for(int y = 0 ; y < 3 ; y++) {
                        if(board[i/3*3+x][j/3*3+y]==temp)
                            return false;
                    }
                }
                board[i][j] = temp;
            }
        }
        return true;
    }
}

class Solution {
public boolean isValidSudoku(char[][] board) {
for(int i = 0; i < 9; i++){
for(int j = 0; j < 9; j++){
if(board[i][j] == '.')continue;
for(int k = 8; k > j; k--)
if(board[i][j] == board[i][k])
return false;
for(int k = 8; k > i; k--)
if(board[i][j] == board[k][j])
return false;
for(int k = i + 1; k % 3 != 0; k ++){
for(int h = j / 3 * 3;h < j / 3 * 3 + 3; h ++ )
if(board[i][j] == board[k][h])
return false;
}
}
}
return true;
}}
```

全部评论

相关推荐

烤点老白薯:他第二句话的潜台词是想让你帮他点个瑞幸或者喜茶啥的
mt对你说过最有启发的一...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务