• <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)
            久久精品国产色蜜蜜麻豆 | 久久精品成人免费国产片小草| 久久精品午夜一区二区福利| 国产国产成人精品久久| 亚洲狠狠综合久久| 久久天天躁狠狠躁夜夜avapp| 久久精品人人做人人爽97| 97久久精品人人做人人爽| 亚洲中文久久精品无码| 久久国产福利免费| 久久久久亚洲精品无码蜜桃| 久久一区二区三区免费| 久久精品嫩草影院| 久久久久亚洲av无码专区喷水| 无夜精品久久久久久| 国产2021久久精品| 青青草国产97免久久费观看| 国产69精品久久久久久人妻精品 | 久久天堂电影网| 久久久久久精品免费免费自慰| 99久久综合狠狠综合久久止| 东方aⅴ免费观看久久av| 9999国产精品欧美久久久久久| 精品久久8x国产免费观看| 国产精品美女久久福利网站| 久久国产精品一区| 国产午夜精品理论片久久| 久久青青草原国产精品免费| 久久久久亚洲av无码专区导航 | 91视频国产91久久久| 狠狠色丁香婷婷久久综合五月| 超级碰久久免费公开视频| 久久国产高清字幕中文| 久久青青草原精品影院| 色成年激情久久综合| 久久综合九色综合97_久久久| .精品久久久麻豆国产精品 | 久久久久97国产精华液好用吗| 99国内精品久久久久久久| 91精品日韩人妻无码久久不卡 | 99久久免费国产精精品|