行业知识
求根节点到叶节点数字之和
2026-11-13 00:24:26
来源:互联网转载
题目
题index.php/tags-41973.html" >���链接
. - 力扣(LeetCode)
题目描述
代码实现
class Solution {public: int sumNumbers(TreeNode* root) { return _sumNumbers(root, 0); } int _sumNumbers(TreeNode* root, int preSum){ preSum = preSum * 10 + root->val; if(root->left == nullptr && root->right == nullptr) return preSum; int ret = 0; if(root->left) ret += _sumNumbers(root->left, preSum); if(root->right) ret += _sumNumbers(root->right, preSum); return ret; }}; 思路分析
这里用到的是递归的思路。
1、这里我们设计的preSum参数用于返回每条路径的数值结果。
2、当遇见叶子节点就表示这条路径的数值结果已经拿完了,直接返回这个preSum。
3、再依次进入左子树和右子树拿到对应子树路径的数值。所有路径数值的总和都放在ret中,返回即可。
上一篇:东南亚服务器在哪里?