您的位置:首页 > 其它

[leetcode刷题系列]Path Sum

2013-08-05 23:42 337 查看
简单模拟题- -又练习指针了

/**
* Definition for binary tree
* struct TreeNode {
*     int val;
*     TreeNode *left;
*     TreeNode *right;
*     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
* };
*/
class Solution {
bool dfs(TreeNode * root, int sum){
if(root->left == 0 && root->right == 0)
return root->val == sum;
sum -= root->val;
if(root->left != 0)
if(dfs(root->left, sum))
return true;
if(root->right != 0)
if(dfs(root->right, sum))
return true;
return false;
}
public:
bool hasPathSum(TreeNode *root, int sum) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
if(root == 0)
return false;
return dfs(root, sum);
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: