• <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麻烦| 久久精品国产久精国产果冻传媒| 久久综合亚洲色一区二区三区| 久久人做人爽一区二区三区| 国产一区二区三区久久精品| 国产无套内射久久久国产| 久久人人爽人人爽人人片AV麻烦| 99久久国产主播综合精品| 久久久久久久久久久久久久| 青青草国产精品久久| 亚洲国产精品久久久天堂| 久久精品国产99久久香蕉| 色88久久久久高潮综合影院 | 久久国产三级无码一区二区| 久久人人爽人人人人爽AV| 99久久www免费人成精品| 久久成人国产精品| 狠狠色婷婷久久一区二区 | 精品久久一区二区| 久久99热这里只频精品6| 欧美亚洲另类久久综合| 精品久久人妻av中文字幕| 久久福利资源国产精品999| 久久精品夜色噜噜亚洲A∨| 精品久久久久久国产| 久久久久人妻一区二区三区vr | 欧美日韩成人精品久久久免费看| 久久久久夜夜夜精品国产| 狠狠88综合久久久久综合网 | 久久精品国产精品国产精品污| 国产aⅴ激情无码久久| 狠狠色丁香久久婷婷综合| 色综合久久夜色精品国产| 色婷婷噜噜久久国产精品12p | 久久人人爽人人爽人人片AV不| 久久久久亚洲AV无码专区首JN | 久久久久一区二区三区| 国产99久久久国产精免费| 久久久久久久国产免费看| 无码人妻少妇久久中文字幕|