描述
给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径
,这条路径上所有节点值相加等于目标和。
说明: 叶子节点是指没有子节点的节点。
注意点:
必须联通到叶节点
分析
从根节点开始,每当遇到一个节点的时候,从目标值里扣除节点值,一直到叶子节点判断目标值是不是被扣完。
解答
bool hasPathSum(struct TreeNode *root, int sum) {
if (root == NULL) {
return false;
}
sum -= root->val;
if (root->left == NULL && root->right == NULL) {
return sum == 0;
} else {
return hasPathSum(root->left, sum) || hasPathSum(root->right, sum);
}
}
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦