LeetCode666 路径总和 IV
题目
需要计算每一个从根节点到叶子节点的路径和,如果仅仅是解决这个问题,那么和 112. 路径总和 解题方法一致。
这道题多一个步骤在于 首先要把树的形态给构造出来。
题目 | 解题 |
---|---|
112. 路径总和 | 深度优先+广度优先搜索 |
113. 路径总和 II | 深度优先+广度优先搜索 |
437. 路径总和 III | 深度优先+前缀和 |
666. 路径总和 IV | 深度优先搜索 |
解题
解题一:显式转换成树
// javascript
/* var TreeNode = function(val, left, right) {
this.val = (val === undefined) ? 0 : val;
this.left = (left === undefined) ? null : left;
this.right = (right === undefined) ? null : right;
};*/
var pathSum = function(nums) {
const root = buildTree(nums);
let sum = 0;
const dfs = (root, cumSum) => {
if (root === null) return;
cumSum += root.val;
if (root.left === null