小黑独自一人享受思考心流:79. 单词搜索
小黑代码
class Solution:def exist(self, board: List[List[str]], word: str) -> bool:# 矩阵的长和宽m = len(board)n = len(board[0])# 字符串长度l = len(word)# 访问标记数组flags = [[False]*n for _ in range(m)]# 结果标记数组self.find = False# 递归函数def exist_path(x, y, t=0):# 退出条件if t==l or self.find:self.find=Truereturn Trueif x<0 or x>=m or y <0 or y>=n or flags[x][y] or board[x][y]!=word[t]:return Falseflags[x][y] = Trueres = exist_path(x, y+1, t+1) or exist_path(x+1, y, t+1) or exist_path(x, y-1, t+1) or exist_path(x-1, y, t+1)flags[x][y] = Falsereturn res# 开始遍历起点for i in range(m):for j in range(n):if exist_path(i, j):return Truereturn False