看题型是求从根节点出发的,首先想到的是自顶向下的DFS,带着参数向下传递,结束条件没有左右儿子
直接前序遍历走起,可以认为是前面的节点都处理好了
var sumNumbers = function(root) {
var ans = 0 var DFS = function (root,path) {
if (!root) return path += root.val if (!root.left && !root.right) {
ans += Number(path)
}
root.left && DFS(root.left,path)
DFS(root.right, path)
}
DFS(root,'')
return ans
};