思路:判断只有当前节点是叶子节点并且结点的值等于暂时sum的值时才确定这是一条满足要求的路径.拥有一条这样的路经就返回真,所以对左右子树的判断结果取活运算.
class Solution {
public:
bool hasPathSum(TreeNode* root, int sum) {
if(!root)
return false;
if(root->left==NULL && root->right==NULL && sum==root->val)
return true;
return hasPathSum(root->left,sum-(root->val)) || hasPathSum(root->right,sum-(root->val));
}
};