• <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)
            狠狠色丁香婷婷综合久久来来去| 久久久久亚洲精品日久生情| 精品久久久久久国产| 99久久国产亚洲高清观看2024 | 女人香蕉久久**毛片精品| 99热成人精品免费久久| 中文精品99久久国产 | 精品无码久久久久久久久久| 中文字幕久久亚洲一区| 99久久无色码中文字幕| 亚洲精品美女久久久久99小说| 中文国产成人精品久久不卡| 四虎国产精品免费久久久| 久久国产色av免费看| 国内精品伊人久久久久影院对白 | 国产精品一久久香蕉国产线看| 久久无码一区二区三区少妇 | 久久人人爽人人精品视频| 亚洲AV日韩AV永久无码久久| 国产亚洲色婷婷久久99精品91| 国产香蕉久久精品综合网| 久久99精品久久久久久| 狼狼综合久久久久综合网| 无码人妻少妇久久中文字幕| 国产精品热久久无码av| 久久国产精品久久精品国产| 久久青青草原亚洲av无码app| 香蕉99久久国产综合精品宅男自 | 久久www免费人成看国产片 | 亚洲七七久久精品中文国产| 久久国产视屏| 久久久久无码中| 久久久久亚洲av毛片大| 精品水蜜桃久久久久久久| 久久99精品久久久久久野外| 国产精品热久久毛片| 久久午夜福利电影| 亚洲人成无码www久久久| 久久99九九国产免费看小说| 免费精品国产日韩热久久| 99久久免费国产精品特黄|