Leetcode 437. Path Sum III | | Leetcode 437. Path Sum III 文章作者:Tyan博客:noahsnail.com | CSDN | 简书 1. Description 2. Solution Recursive 1234567891011121314151617181920212223242526272829303132/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: int pathSum(TreeNode* root, int sum) { if(!root) { return 0; } int paths = 0; path(root, sum, paths); return paths + pathSum(root->left, sum) + pathSum(root->right, sum); } void path(TreeNode* root, int sum, int& paths) { if(root->val == sum) { paths++; } if(root->left) { path(root->left, sum - root->val, paths); } if(root->right) { path(root->right, sum - root->val, paths); } }}; Reference https://leetcode.com/problems/path-sum-iii/description/ 如果有收获,可以请我喝杯咖啡! 赏 微信打赏 支付宝打赏