二叉树中和为某一值的路径

2018-08-28sad creeper

输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)

/* function TreeNode(x) {
this.val = x;
this.left = null;
this.right = null;
} */

function Solution(root, expectNumber){
if(!root)
return [];
let arr = Array.from([]);
let results = Array.from([]);
return FindPath(root, expectNumber);
function FindPath(root, expectNumber){
if(root == null)
return;
arr.push(root.val);
expectNumber -= root.val;
if(expectNumber == 0 && !root.left && !root.right){
results.push(Array.from(arr));
}
FindPath(root.left, expectNumber);
FindPath(root.right, expectNumber);
arr.pop();
return results;
}
}

阅读 117 评论