Reference: LeetCode

Difficulty: Medium

## Problem

Determine if a

`9x9`

Sudoku board is valid. Only the filled cells need to be validated according to the following rules:

- Each row must contain the digits
`1-9`

without repetition. - Each column must contain the digits
`1-9`

without repetition. - Each of the 9
`3x3`

sub-boxes of the grid must contain the digits`1-9`

without repetition.

The Sudoku board could be partially filled, where empty cells are filled with the character ‘.’.

**Example:**

1 | Input: [ |

**Note:**

- A Sudoku board (partially filled) could be valid but is not necessarily solvable.
- Only the filled cells need to be validated according to the mentioned rules.
- The given board contain only digits
`1-9`

and the character`'.'`

. - The given board size is always
`9x9`

.

## Analysis

### Hash Set

Check three cases respectively.

1 | public boolean isValidSudoku(char[][] board) { |

**Time:** $O(1)$**Space:** $O(1)$

Or, we can use 27 hash set to achieve `one-pass`

solution.

1 | Set<Integer> [] rows = new HashSet[9]; |