• <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
            給出一顆二叉搜索樹,求樹中數值范圍處于[low, high]的節點之和,DFS,如果當前節點處于[low, high],則左右子樹都要搜索,如果當前節點小于low,只需要搜索右子樹,如果當前節點大于high,只需要搜索左子樹,不過這題數據比較簡單,直接深搜完整棵樹,遇到處于[low, high]的節點就累加也可以過

            只搜索特定子樹:

             1 #938
             2 #Runtime: 284 ms
             3 #Memory: 29.9 MB
             4 
             5 # Definition for a binary tree node.
             6 # class TreeNode(object):
             7 #     def __init__(self, val=0, left=None, right=None):
             8 #         self.val = val
             9 #         self.left = left
            10 #         self.right = right
            11 class Solution(object):
            12     def rangeSumBST(self, root, low, high):
            13         """
            14         :type root: TreeNode
            15         :type low: int
            16         :type high: int
            17         :rtype: int
            18         """
            19         def DFS(r):
            20             if not r:
            21                 return 0
            22             if r.val >= low and r.val <= high:
            23                 return r.val + DFS(r.left) + DFS(r.right)
            24             if r.val < low:
            25                 return DFS(r.right)
            26             if r.val > high:
            27                 return DFS(r.left)
            28         return DFS(root)

            暴力搜完整棵樹:

             1 #938
             2 #Runtime: 535 ms
             3 #Memory: 29.5 MB
             4 
             5 # Definition for a binary tree node.
             6 # class TreeNode(object):
             7 #     def __init__(self, val=0, left=None, right=None):
             8 #         self.val = val
             9 #         self.left = left
            10 #         self.right = right
            11 class Solution(object):
            12     def rangeSumBST(self, root, low, high):
            13         """
            14         :type root: TreeNode
            15         :type low: int
            16         :type high: int
            17         :rtype: int
            18         """
            19         self.ans = 0
            20         def DFS(r):
            21             if not r:
            22                 return
            23             DFS(r.left)
            24             if r.val >= low and r.val <= high:
            25                 self.ans += r.val
            26             DFS(r.right)
            27         DFS(root)
            28         return self.ans
            99久久做夜夜爱天天做精品| 精品久久久久久久中文字幕| 伊人久久大香线蕉综合网站| 久久国产影院| 武侠古典久久婷婷狼人伊人| 97视频久久久| 99久久国产精品免费一区二区| 一本色道久久HEZYO无码| 亚洲va久久久噜噜噜久久| 亚洲国产精品无码久久SM| 国产亚洲精品久久久久秋霞| 精品久久久噜噜噜久久久| 久久久久久久综合日本亚洲| 精品国产热久久久福利| 亚洲精品乱码久久久久久蜜桃| 久久精品中文无码资源站| 精品人妻伦九区久久AAA片69| 狠狠色丁香久久婷婷综合五月 | 久久久久久亚洲精品成人| 久久久久久人妻无码| 国产免费久久久久久无码| 国产精品美女久久福利网站| 亚洲国产精品无码久久久不卡 | 久久91精品国产91久| 亚洲精品tv久久久久久久久| 97r久久精品国产99国产精| 久久国产影院| 国产精品九九九久久九九| 久久久久久国产a免费观看不卡| 99久久无色码中文字幕人妻| 久久精品国内一区二区三区| 精品国产日韩久久亚洲| 国产婷婷成人久久Av免费高清| 久久久久久久综合综合狠狠| 欧美一区二区三区久久综| 久久国产一片免费观看| 国内精品久久九九国产精品| 亚洲国产精品无码成人片久久| 久久精品一区二区影院 | 亚洲AV成人无码久久精品老人| 久久国产精品波多野结衣AV|