題意:
給定二叉搜尋樹的根結點 root,返回 l 和 r(含)之間的所有結點的值的和。
二叉搜尋樹保證具有唯一的值。
思路:題意不難,但是對python的因為是的動態語言,所以不會優先使用全域性變數,所以要指定變數
code:
class
solution
(object):
defrangesumbst
(self, root, l, r)
: self.ans =
0def
dfs(node)
:if node:
if l <= node.val <= r:
self.ans += node.val
if l < node.val:
dfs(node.left)
if node.val < r:
dfs(node.right)
dfs(root)
return self.ans
938 二叉搜尋樹的範圍和
輸入 root 10,5,15,3,7,null,18 l 7,r 15 輸出 32 10 7 15 輸入 root 10,5,15,3,7,13,18,1,null,6 l 6,r 10 輸出 23 10 7 6 剪枝 不剪枝class solution int ans 0 ans ans ran...
938 二叉搜尋樹的範圍和
938.二叉搜尋樹的範圍和 給定二叉搜尋樹的根結點 root,返回 l 和 r 含 之間的所有結點的值的和。二叉搜尋樹保證具有唯一的值。示例 1 輸入 root 10,5,15,3,7,null,18 l 7,r 15 輸出 32 示例 2 輸入 root 10,5,15,3,7,13,18,1,n...
938 二叉搜尋樹的範圍和
給定二叉搜尋樹的根結點root,返回值位於範圍 low,high 之間的所有結點的值的和。示例 輸入 root 10,5,15,3,7,null,18 low 7,high 15 輸出 32 由於給定的是二叉搜尋樹,我們就要充分利用好二叉搜尋樹的特性,不必對節點全部遍歷。我們可以用深度優先搜尋進行範...