112. Path Sum
2016-11-19 01:08
162 查看
Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.
For example:
Given the below binary tree and
return true, as there exist a root-to-leaf path
思路:就是不斷遍歷樹,把值加起來,看最後如果加總值是目標值而且已經是樹葉了,就是得證
/**
* 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:
bool hasPathSum(TreeNode* root, int sum) {
return solve(root, 0, sum);
}
bool solve(TreeNode* root, int sum, int target) {
946a
if(root == NULL) {
return false;
}
sum += root->val;
if(sum == target && root->left == NULL && root->right == NULL) {
return true;
}
return solve(root->left, sum, target) || solve(root->right, sum, target);
}
};
For example:
Given the below binary tree and
sum = 22,
5 / \ 4 8 / / \ 11 13 4 / \ \ 7 2 1
return true, as there exist a root-to-leaf path
5->4->11->2which sum is 22.
思路:就是不斷遍歷樹,把值加起來,看最後如果加總值是目標值而且已經是樹葉了,就是得證
/**
* 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:
bool hasPathSum(TreeNode* root, int sum) {
return solve(root, 0, sum);
}
bool solve(TreeNode* root, int sum, int target) {
946a
if(root == NULL) {
return false;
}
sum += root->val;
if(sum == target && root->left == NULL && root->right == NULL) {
return true;
}
return solve(root->left, sum, target) || solve(root->right, sum, target);
}
};
相关文章推荐
- leetCode #112 path sum
- 112 Path Sum
- LeetCode112——path sum
- leetcode112---Path Sum
- leetcode112~Path Sum
- Leetcode 112 Path Sum
- FTPrep, 112 Path Sum
- leetcode[112]Path Sum
- 112. Path Sum
- LeetCode力扣之112. Path Sum
- 112 Path Sum
- leetcode_112_Path Sum
- <LeetCode><Easy> 112 Path Sum --二叉树深度优先遍历
- 112 Path Sum
- LeetCode笔记:112. Path Sum
- leetcode-112-Path Sum
- 112. Path Sum
- LeetCode(112)Path Sum
- [leetcode 112] Path Sum
- LeetCode112 Path Sum