1. 程式人生 > 其它 >leecode no.129 求根節點到葉節點數字之和

leecode no.129 求根節點到葉節點數字之和

package tree;

import java.util.ArrayList;
import java.util.List;

/**
* 129. 求根節點到葉節點數字之和
* 給你一個二叉樹的根節點 root ,樹中每個節點都存放有一個 0 到 9 之間的數字。
* 每條從根節點到葉節點的路徑都代表一個數字:
*
* 例如,從根節點到葉節點的路徑 1 -> 2 -> 3 表示數字 123 。
* 計算從根節點到葉節點生成的 所有數字之和 。
*
* 葉節點 是指沒有子節點的節點。
*
*
* @author Tang
* @date 2021/7/22
*/
public class SumNumbers {

int sum = 0;

/**
* 前序遍歷
* 通過String 每次拼一個當前節點的數字
* 如果當前節點是葉子節點,String數字加入到集合
* sum集合
*
* @param root
* @return
*/
public int sumNumbers(TreeNode root) {
preSearch(root, "");
return sum;
}

private void preSearch(TreeNode node, String num){
if(node == null) {
return;
}
num = num + node.val;
if(node.left == null && node.right == null){
sum += Integer.parseInt(num);
return;
}
preSearch(node.left, num);
preSearch(node.right, num);
}

public static void main(String[] args) {
String s = "";
System.out.println(s+11);


}
}