标签:
最后一个循环的问题比较值得学习,本质是n皇后
public class Solution { public boolean isValidSudoku(char[][] board) { //http://blog.csdn.net/linhuanmars/article/details/20748171 if(board==null || board.length==0) return false; for(int i=0; i<9; i++){ boolean [] row = new boolean[9]; for(int j=0; j<9; j++){ if(board[i][j]!=‘.‘){ if(row[(int) (board[i][j]-‘1‘)]) return false; row[(int) (board[i][j]-‘1‘)] = true; } } } for(int j=0; j<9; j++){ boolean[] col = new boolean[9]; for(int i=0; i<9; i++){ if(board[i][j]!=‘.‘){ if(col[(int) (board[i][j]-‘1‘)]) return false; col[(int) (board[i][j]-‘1‘)] = true; } } } for(int b = 0; b<9; b++){ boolean[] blk = new boolean[9]; for(int i=b/3*3; i<b/3*3+3; i++){ for(int j=b%3*3; j<b%3*3+3; j++){ if(board[i][j]!=‘.‘){ if(blk[(int) (board[i][j]-‘1‘)]) return false; blk[(int) (board[i][j]-‘1‘)] = true; } } } } return true; } }
标签:
原文地址:http://www.cnblogs.com/jiajiaxingxing/p/4446293.html