zoukankan      html  css  js  c++  java
  • leetcode-mid-backtracking -22. Generate Parentheses-79 Word Search -NO

    mycode   错误,因为借鉴了Number of Islands问题中的方法,导致在for循环中即使已经出现了答案,也还会继续遍历。但是两个题目的不同时,island需要找出所有的情况,这个题只需要找到第一个完整结果就可以返回

     参考:

     
    def exist(board, word):
            """
            :type board: List[List[str]]
            :type word: str
            :rtype: bool
            """
            def find(board, word, i, j, m, n):
                if word == '':
                    print('if',i,j)
                    return True
                if i < 0 or i >= m or j < 0 or j >= n:
                    print('if2',i,j)
                    return False
                elif word[0] == board[i][j]:
                    print('elif',i,j)
                    board[i][j] = None #标记
                    res = find(board, word[1:], i+1, j, m, n)or find(board, word[1:], i-1, j, m, n)or find(board, word[1:], i, j+1, m, n)or find(board, word[1:], i, j-1, m, n)
                    board[i][j] = word[0] #恢复原来的值
                    return res
                print(i,j)
            if len(word) == 0:
                return True
            m = len(board)
            if m == 0:
                return False
            n = len(board[0])
            for i in range(m):
                for j in range(n):
                    if find(board, word, i, j, m, n):
                        return True
            return False
     
  • 相关阅读:
    移动互联网广告
    移动互联网广告
    移动互联网广告
    移动互联网广告
    移动互联网广告
    移动互联网广告
    vue2.0 transition -- demo实践填坑
    纯CSS3制作皮卡丘动画壁纸
    纯CSS3制作卡通场景汽车动画效果
    18种CSS3loading效果完整版
  • 原文地址:https://www.cnblogs.com/rosyYY/p/10972826.html
Copyright © 2011-2022 走看看