[Leetcode with python] 36. Valid Sudoku (# Hash table)
题目
https://leetcode.com/problems/valid-sudoku/
解题
遍历三次矩阵,三个规则都检验一次。
class Solution(object):
def isValidSudoku(self, board):
"""
:type board: List[List[str]]
:rtype: bool
"""
for row in board:
d = {}
for i in row:
if i in d:
return False
elif i != '.':
d[i] = 1
for j in range(9):
d = {}
for i in range(9):
if board[i][j] in d:
return False
elif board[i][j] != '.':
d[board[i][j]] = 1
for i in range(3):
for j in range(3):
d = {}
for m in range(3*i, 3*(i+1)):
for n in range(3*j, 3*(j+1)):
if board[m][n] in d:
return False
elif board[m][n] != '.':
d[board[m][n]] = 1
return True