|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- Given the root node of a binary search tree, return the sum of values of all nodes with value between L and R (inclusive).
- The binary search tree is guaranteed to have unique values.
-
- Example 1:
- Input: root = [10,5,15,3,7,null,18], L = 7, R = 15
- Output: 32
- Example 2:
- Input: root = [10,5,15,3,7,13,18,1,null,6], L = 6, R = 10
- Output: 23
-
- Note:
- The number of nodes in the tree is at most 10000.
- The final answer is guaranteed to be less than 2^31.
复制代码
- /**
- * Definition for a binary tree node.
- * public class TreeNode {
- * int val;
- * TreeNode left;
- * TreeNode right;
- * TreeNode(int x) { val = x; }
- * }
- */
- class Solution {
- public int rangeSumBST(TreeNode root, int L, int R) {
- if(root == null) return 0;
- return sum(root,L,R);
- }
-
- public int sum(TreeNode root, int L, int R){
-
- if(root == null) return 0;
- if(root.val >= L && root.val <= R) return root.val + sum(root.left,L,R) + sum(root.right,L,R);
- else if(root.val < L) return sum(root.right ,L,R);
- else return sum(root.left, L,R);
- }
- }
复制代码 |
|