leetcode 112 Path Sum 路徑和
阿新 • • 發佈:2019-03-01
pub int com 根節點 inf info return 使用遞歸 sum
437 path sum
C++:使用遞歸先序遍歷,記錄根節點到當前節點的路徑和,如果當前節點是葉節點,判斷是否等於sum
1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * TreeNode *right; 7 * TreeNode(int x) : val(x), left(NULL), right(NULL) {} 8 * }; 9 */ 10class Solution { 11 public: 12 bool hasPathSum(TreeNode* root, int sum) { 13 bool res=false; 14 dfs(root,sum,0,res); 15 return res; 16 } 17 void dfs(TreeNode* node,int sum,int curSum,bool &res){ 18 if(!node) return; 19 curSum+=node->val;20 if(node->left==NULL&&node->right==NULL&&curSum==sum) res=true; 21 dfs(node->left,sum,curSum,res); 22 dfs(node->right,sum,curSum,res); 23 } 24 };
leetcode 112 Path Sum 路徑和