题目
代码与解析
这道题可以看做leetcode112和leetcode257合体
leetcode257
leetcode112
这道题要遍历整棵树, 把所有符合条件的路径添加进去, 所以不需要返回值
递归三部曲:
-
确定参数和返回值
要传入 当前节点, 和总和, 不需要返回值 -
确定终止条件
如果当前节点没有叶子结点,并且和等于target. 那么添加进res, 并返回
如果当前节点没有叶子结点, 就返回 -
确定单层递归逻辑
我采用的前序遍历, 先处理中间节点,把当前节点添加进path,如果当前节点没有叶子结点,并且和等于target. 那么添加进res, 并返回,
然后判断做节点左节点是否为空, 不空就遍历,并且加上回溯,遍历完恢复原样,我代码里写到逻辑这里是两处回溯,一个是path, 一个是sum,右节点也是如此