• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594
            給出一列數,每個數字nums[i]代表走到該位置i時,可以跳到i-nums[i]或者i+nums[i],問從start位置開始是否可以跳到nums[i]=0的位置i,DFS或者BFS爆搜

            DFS

             1 #1306
             2 #Runtime: 673 ms
             3 #Memory Usage: 66.7 MB
             4 
             5 class Solution(object):
             6     def canReach(self, arr, start):
             7         """
             8         :type arr: List[int]
             9         :type start: int
            10         :rtype: bool
            11         """
            12         def DFS(arr, pos, vis):
            13             if pos >= len(arr) or pos < 0 or pos in vis:
            14                 return False
            15             vis.add(pos)
            16             if arr[pos] == 0:
            17                 return True
            18             return DFS(arr, pos + arr[pos], vis) or DFS(arr, pos - arr[pos], vis)
            19         return DFS(arr, start, set())


            BFS

             1 #1306
             2 #Runtime: 238 ms
             3 #Memory Usage: 20 MB
             4 
             5 class Solution(object):
             6     def canReach(self, arr, start):
             7         """
             8         :type arr: List[int]
             9         :type start: int
            10         :rtype: bool
            11         """
            12         def BFS(arr, start):
            13             q = deque([start])
            14             vis = set([start])
            15             while q:
            16                 pos = q.popleft()
            17                 if arr[pos] == 0:
            18                     return True
            19                 if pos + arr[pos] < len(arr) and pos + arr[pos] not in vis:
            20                     vis.add(pos + arr[pos])
            21                     q.append(pos + arr[pos])
            22                 if pos - arr[pos] >= 0 and pos - arr[pos] not in vis:
            23                     vis.add(pos - arr[pos])
            24                     q.append(pos - arr[pos])
            25             return False
            26         return BFS(arr, start)
            久久国产色AV免费看| 国产麻豆精品久久一二三| 久久精品不卡| 久久人人爽人爽人人爽av| 欧美性大战久久久久久| 久久99久国产麻精品66| 99久久精品国产麻豆| 国产精品久久久久一区二区三区| 国产亚洲美女精品久久久| 久久www免费人成精品香蕉| 伊人久久五月天| 999久久久无码国产精品| 久久综合久久鬼色| 日韩精品国产自在久久现线拍| 久久人妻AV中文字幕| Xx性欧美肥妇精品久久久久久| 精品国产乱码久久久久久人妻| 久久精品国产精品青草| 97精品依人久久久大香线蕉97 | 99久久99久久精品国产片果冻| 精品九九久久国内精品| 伊人久久综合无码成人网| 激情综合色综合久久综合| 97热久久免费频精品99| 久久久久久精品免费看SSS| 欧美精品一区二区久久| 久久99久久99小草精品免视看| 一本色道久久88—综合亚洲精品| 国内精品久久久久影院网站| 久久精品国产精品青草| www性久久久com| 国产精品久久久久久久久免费| 久久婷婷五月综合97色 | 少妇久久久久久久久久| 久久无码专区国产精品发布| 久久久免费观成人影院 | 久久久久国产一级毛片高清版| 久久综合给合久久狠狠狠97色69| 久久婷婷人人澡人人爽人人爱 | 色偷偷91久久综合噜噜噜噜| 久久久国产精品|