[LeetCode]36. Valid Sudokujava

    xiaoxiao2021-03-25  150

    /**36. Valid Sudoku * @param board * @return */ public boolean isValidSudoku(char[][] board) { HashSet<Character> set = new HashSet<Character>(); // Check for each row for (int i = 0; i < 9; i++) { for (int j = 0; j < 9; j++) { if (board[i][j] == '.') continue; if (set.contains(board[i][j])) return false; set.add(board[i][j]); } set.clear(); } // Check for each column for (int j = 0; j < 9; j++) { for (int i = 0; i < 9; i++) { if (board[i][j] == '.') continue; if (set.contains(board[i][j])) return false; set.add(board[i][j]); } set.clear(); } // Check for each sub-grid for (int k = 0; k < 9; k++) { for (int i = k/3*3; i < k/3*3+3; i++) { for (int j = (k%3)*3; j < (k%3)*3+3; j++) { if (board[i][j] == '.') continue; if (set.contains(board[i][j])) return false; set.add(board[i][j]); } } set.clear(); } return true; }

    // HashSet的唯一性来帮助check

    转载请注明原文地址: https://ju.6miu.com/read-4635.html

    最新回复(0)