Open pwstrick opened 4 years ago
113. 路径总和 II
/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } */ /** * @param {TreeNode} root * @param {number} sum * @return {number[][]} */ let results; var pathSum = function(root, sum) { if(!root) return []; results = []; let route = []; dfs(root, route, sum); return results; }; function dfs(root, route, sum) { if(!root.left && !root.right) { //根结点 route.push(root.val); //插入结点 if(route.reduce((arr, cur) => arr+=cur) == sum) results.push([...route]); route.pop(); //移除结点 return; } route.push(root.val); //选择 root.left && dfs(root.left, route, sum); root.right && dfs(root.right, route, sum); route.pop(); //撤销 }
113. 路径总和 II