113. 路径总和 II

给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。

说明: 叶子节点是指没有子节点的节点。

示例:

给定如下二叉树,以及目标和 sum = 22,

          5
/ \
4 8
/ / \
11 13 4
/ \ / \
7 2 5 1

返回:

[

[5,4,11,2],

[5,8,4,5]

]


class Solution {
public List<List<Integer>> pathSum(TreeNode root, int sum) {
if(root == null) return new ArrayList<>();
List<List<Integer>> ans = new ArrayList<>();
if(root.val == sum && root.left == null && root.right == null){
List<Integer> arr = new ArrayList<>();
arr.add(root.val);
ans.add(arr);
return ans;
}
List<List<Integer>> left = pathSum(root.left,sum - root.val);
List<List<Integer>> right = pathSum(root.right,sum - root.val);
for(List<Integer> list : left){
//这里的插入到指定坐标会让后面的自动向后排序
list.add(0,root.val);
ans.add(list);
}
for(List<Integer> list : right){
list.add(0,root.val);
ans.add(list);
}
return ans;
}
}

最新文章

  1. 【Alpha】Daily Scrum Meeting第十次
  2. [麦先生]初学Laravel框架与ThinkPHP的不同(1)
  3. LeetCode:Convert Sorted Array to Binary Search Tree,Convert Sorted List to Binary Search Tree
  4. ldap
  5. C++对象的自销毁
  6. Git中的fetch和pull
  7. JAVA 反射特性
  8. 空值排序(oracle/sqlserver)
  9. Swift:使用系统AVFoundation实现二维码扫描和生成
  10. Inno Setup入门(十二)&mdash;&mdash;Pascal脚本(1)
  11. linux  指令 备注
  12. 内存管理之slab分配器
  13. Django配置mysql
  14. UWP 自定义控件:了解模板化控件 系列文章
  15. DingDing的CorpSecretID和SSOSecret不是一个东西
  16. 制作Visual Studio 2019 (VS 2019) 离线安装包
  17. Spring @RequestAttribute
  18. HDU 2072 单词数 详细解答
  19. MySQL命令行--导入导出数据库
  20. 关于Xilinx MicroBlaze应用modelsim se仿真问题(EDK:3593 - Unable to locate the precompiled library microblaze_v8_50_c)

热门文章

  1. 老板:kill -9 的原理都不知道就敢去线上执行?明天不用来了!
  2. Offset等一些类似属性的使用
  3. [hdu5400 Arithmetic Sequence]预处理,容斥
  4. Dozer-对象属性映射工具类
  5. net core中Vue.component单独一个文件不运行,不报错的处理
  6. ql的python学习之路-day8
  7. Zookeeper 如何保证分布式系统数据一致性
  8. NullPointerException异常没有异常栈打印问题追踪
  9. Redis 消息中间件 ServiceStack.Redis 轻量级
  10. poj3376 KMP+字典树求回文串数量(n*n)