题意:
解题思路:
思路:1. 先遍历行,再遍历列,最后遍历3*3方块;2. 使用字典存储,遍历到对应的行列再判断字典是否包含该数字;3. 方块的判断:    $x = 3 * floor($i / 3) + floor($j / 3);     $y = 3 * floor($i % 3) + floor($j % 3);    比如:i = 3, j = 4 => [3,4]=>[4,1] => 表示i,j=[3,4]位于第4个box的第一个小格子
PHP代码实现:
class Solution {    function isValidSudoku($board) {        $row = count($board);        $col = count($board[0]);        for ($i = 0; $i < $row; $i++) {            $rows = [];            $cols = [];            $cube = [];            for ($j = 0; $j < $col; $j++) {                if ($board[$i][$j] != '.' && in_array($board[$i][$j], $rows)) {                    return false;                } else {                    array_push($rows, $board[$i][$j]);                }                if ($board[$j][$i] != '.' && in_array($board[$j][$i], $cols)) {                    return false;                } else {                    array_push($cols, $board[$j][$i]);                }                $x = 3 * floor($i / 3) + floor($j / 3);                $y = 3 * floor($i % 3) + floor($j % 3);                if ($board[$x][$y] != '.' && in_array($board[$x][$y], $cube)) {                    return false;                } else {                    array_push($cube, $board[$x][$y]);                }            }        }        return true;    }}
GO代码实现:
func isValidSudoku(board [][]byte) bool {    for i := 0; i < 9; i++ {        rows := map[byte]bool{}        cols := map[byte]bool{}        cube := map[byte]bool{}        for j := 0; j < 9; j++ {            if board[i][j] != '.' && rows[board[i][j]] {                return false            } else {                rows[board[i][j]] = true            }            if board[j][i] != '.' && cols[board[j][i]] {                return false;            } else {                cols[board[j][i]] = true            }            x := 3 * (i / 3) + j / 3            y := 3 * (i % 3) + j % 3            if board[x][y] != '.' && cube[board[x][y]] {                return false;            } else {                cube[board[x][y]] = true            }        }    }    return true}