classSolution{ publicintpathSum(TreeNode root, int targetSum){
if (root == null) { return0; } // 以当前节点为根节点 int now = rootSum(root, targetSum); // 考虑左右节点 int left = pathSum(root.left, targetSum); int right = pathSum(root.right, targetSum); return now + left + right; }
introotSum(TreeNode root, int targetSum){
if (root == null) { return0; }
int res = 0; if (root.val == targetSum) { res++; }
int left = rootSum(root.left, targetSum - root.val); int right = rootSum(root.right, targetSum - root.val); return res + left + right; } }