剑指offer--二叉树中和为某一值的路径
来源:互联网 发布:剑灵正太捏脸数据 编辑:程序博客网 时间:2024/05/24 03:29
题目描述
输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。
import java.util.ArrayList;/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}*/public class Solution { public ArrayList<ArrayList<Integer>> FindPath(TreeNode root,int target) { ArrayList<ArrayList<Integer>> lists = new ArrayList<>(); ArrayList<Integer> list = new ArrayList<>(); int sum = 0; findPath(lists,list,root,target,sum); return lists; } public int findPath(ArrayList<ArrayList<Integer>> lists,ArrayList<Integer> list,TreeNode root,int target,int sum){ if (root == null) return 0; list.add(root.val); sum+=root.val; if(sum == target && root.left == null && root.right == null) { lists.add(new ArrayList<Integer>(list)); } findPath(lists,list,root.left,target,sum); findPath(lists,list,root.right,target,sum); list.remove(list.size()-1); return 1; } }
递归出真知。虽然效率不高……
阅读全文
0 0
- 剑指offer:二叉树中和为某一值的路径
- 【剑指offer】二叉树中和为某一值的路径
- 剑指offer--二叉树中和为某一值的路径
- 《剑指offer》二叉树中和为某一值的路径
- 【剑指Offer】二叉树中和为某一值的路径
- 剑指Offer--二叉树中和为某一值的路径
- 剑指offer:二叉树中和为某一值的路径
- 剑指offer 二叉树中和为某一值的路径
- 剑指offer:二叉树中和为某一值的路径
- [剑指offer]二叉树中和为某一值的路径
- 《剑指offer》-二叉树中和为某一值的路径
- 剑指offer 二叉树中和为某一值的路径
- 【剑指offer】二叉树中和为某一值的路径
- 剑指offer|二叉树中和为某一值的路径
- 《剑指offer》二叉树中和为某一值的路径
- 剑指offer 二叉树中和为某一值的路径
- 剑指Offer:二叉树中和为某一值的路径
- 剑指offer-二叉树中和为某一值的路径
- 数组
- Android studio 引入第三方类库
- Wandering Robots hdu6229 离散化+思维找规律+bitset标记
- ES6之表达式结构(Destructuring)
- structs2 中关于struts2.xml文件中的action和result标签
- 剑指offer--二叉树中和为某一值的路径
- 通用方法
- libcurl windows下编译和post使用及https支持
- SSM重构web版Windows资源管理器
- NOIP2012 开车旅行 (倍增)
- [2017纪中11-5]轰炸 强联通分量+DAG最长路
- 关于组合和继承 ---- 代码复用& 选择问题
- 【Android View事件(四)】View滑动与实现滑动的几种方法
- C语言习题6