题目描述
给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。例如,从根到叶子节点路径 1->2->3 代表数字 123。计算从根到叶子节点生成的所有数字之和。
题解
1 2 3 4 5 6 7 8 9 10 11
| int helper(TreeNode* root, int i) { if (!root)return 0; int tmp = i * 10 + root->val; if (!root->left && !root->right) return tmp; return helper(root->left, tmp) + helper(root->right, tmp); } int sumNumbers(TreeNode* root) { return helper(root, 0); }
|
我这是怎么了啊……