1. 程式人生 > 其它 >求根節點到葉節點數字之和——leetcode129

求根節點到葉節點數字之和——leetcode129

求根節點到葉節點數字之和

題目:求根節點到葉節點數字之和

給你一個二叉樹的根節點 root ,樹中每個節點都存放有一個 0 到 9 之間的數字。每條從根節點到葉節點的路徑都代表一個數字:
例如,從根節點到葉節點的路徑 1 -> 2 -> 3 表示數字 123 。
計算從根節點到葉節點生成的 所有數字之和 。

示例 1:

輸入:root = [1,2,3]
輸出:25
解釋:
從根到葉子節點路徑 1->2 代表數字 12
從根到葉子節點路徑 1->3 代表數字 13
因此,數字總和 = 12 + 13 = 25

題解

class Solution {
    private int sum;
    public void dfs(TreeNode root, int number)
    {
       if(root==null) return;
       number=number*10+ root.val;
       if(root.left==null && root.right==null)
       {
           sum+=number;
           return;
       }
       dfs(root.left, number);
       dfs(root.right,number);
    }
    public int sumNumbers(TreeNode root) {
        sum=0;
        dfs(root,0);

        return sum;
    }
}