今天的題目為129.Sum Root to Leaf Numbers,給定一棵只包含數字(0–9)的二元樹,每條從根節點到葉節點的路徑都代表一個數字(例如路徑 1 → 2 → 3 代表數字 123),回傳所有根到葉路徑所代表的數字總和。
以下為程式碼:
class Solution {
public int sumNumbers(TreeNode root) {
return dfs(root, 0);
}
private int dfs(TreeNode node, int currentSum) {
if (node == null) return 0;
currentSum = currentSum * 10 + node.val;
if (node.left == null && node.right == null) {
return currentSum;
}
return dfs(node.left, currentSum) + dfs(node.right, currentSum);
}
}