class Solution { public: /** * * @param root TreeNode类 * @param sum int整型 * @return bool布尔型 */ int sign=0; //sign=1时表示找到路径 void qiuhe(TreeNode* root,int s,int sum){ //节点值自增 传入子节点 s+=root->val; if(root->left!=NULL) qiuhe(root->left,s,sum); if(root->right!=NULL) qiuhe(root->right,s,sum); if(root->left==NULL&&root->right==NULL) if(s==sum) sign=1; //当是叶子节点时,判断是否是要的值 } bool hasPathSum(TreeNode* root, int sum) { // write code here if(root!=NULL) qiuhe(root,0,sum); //从根节点开始遍历 else return false; if(sign==0) return false; else return true; } };