输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。

代码:

package offer;

import java.util.ArrayList;

class BineryTree1
{
    int val;
    BineryTree1 left = null;
    BineryTree1 right = null;
    BineryTree1(int val)
    {
        this.val = val;
    }
}
public class ti34 {
    static ArrayList<Integer> list = new ArrayList<Integer>();
    static ArrayList<ArrayList<Integer>> result = new ArrayList<ArrayList<Integer>>();
    static  ArrayList<ArrayList<Integer>> FindPath(BineryTree1 root,int target)
    {
        
        if(root==null)
        {
            return result;
        }
        list.add(root.val);
        target-=root.val;
        if(target == 0 && root.left == null && root.right == null) {
            result.add(new ArrayList<Integer>(list) );//重点,这里一定要强制new一个对象,要不然不行
        }
        FindPath(root.left,target);
        FindPath(root.right,target);
        list.remove(list.size()-1);
        return result;
    }
    public static void main(String[] args)
    {
        BineryTree1 a = new BineryTree1(10);
        BineryTree1 b = new BineryTree1(5);
        BineryTree1 c = new BineryTree1(12);
        BineryTree1 d = new BineryTree1(4);
        BineryTree1 e = new BineryTree1(7);
        a.left = b;
        a.right = c;
        b.left = d;
        b.right = e;
        ArrayList<ArrayList<Integer>> list = FindPath(a,22);
        for(int i=0;i<list.size();i++)
        {
            for(int j=0;j<list.get(i).size();j++)
            {
                System.out.print(list.get(i).get(j)+" ");
            }
            System.out.println();
        }
    }
}

【剑指offer】面试题34:二叉树中和为某一值的路径相关推荐

  1. 剑指offer面试题34. 二叉树中和为某一值的路径(先序遍历)(回溯)

    题目描述 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径.从树的根节点开始往下一直到叶节点所经过的节点形成一条路径. 思路 详见链接 代码 class Solution:def ...

  2. 剑指offer(C++)-JZ34:二叉树中和为某一值的路径(二)(数据结构-树)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 输入一颗二叉树的根节点root和一个整数expectNumber,找出二叉树中结点值 ...

  3. 剑指offer(C++)-JZ82:二叉树中和为某一值的路径(一)(数据结构-树)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 给定一个二叉树root和一个值 sum ,判断是否有从根节点到叶子节点的节点值之和等 ...

  4. 剑指offer:面试题34. 二叉树中和为某一值的路径

    题目:二叉树中和为某一值的路径 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径.从树的根节点开始往下一直到叶节点所经过的节点形成一条路径. 示例: 给定如下二叉树,以及目标和  ...

  5. 【剑指offer-Java版】25二叉树中和为某一值的路径

    二叉树中值和为某一值的路径:类似图的深度优先遍历 对于此类问题一直有点弱,多想几次就OK了–主要是不熟悉,毕竟代码写出来之后一看就明白,但是自己想的时候还是有点困难 public class _Q25 ...

  6. 【LeetCode】剑指 Offer 34. 二叉树中和为某一值的路径

    [LeetCode]剑指 Offer 34. 二叉树中和为某一值的路径 文章目录 [LeetCode]剑指 Offer 34. 二叉树中和为某一值的路径 package offer;import ja ...

  7. 剑指offer——面试题34:丑数

    剑指offer--面试题34:丑数 Solution1: 最容易想到的,也是最不可能AC的 class Solution {public:int GetUglyNumber_Solution(int ...

  8. 剑指 Offer 34. 二叉树中和为某一值的路径【附完整可运行代码】

    立志用最少的代码做最高效的表达 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径.从树的根节点开始往下一直到叶节点所经过的节点形成一条路径. 示例: 给定如下二叉树,以及目标和 ...

  9. [剑指offer]面试题34:丑数

    面试题34:丑数 题目:我们把只包含因子2.3和5的数称作丑数(Ugly Number).求按从小到大的顺序的第1500个丑数.例如6.8都是丑数,但14不是,因为它包含因子7.习惯上我们把1当做第一 ...

  10. 113. 路径总和 (剑指 Offer 34. 二叉树中和为某一值的路径)(回溯算法)

    给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径. 叶子节点 是指没有子节点的节点. 示例 1: 输入:root = [ ...

最新文章

  1. linux更新出现Could not get lock /var/lib/apt/lists/lock问题解决方法
  2. STL priority实例
  3. mysql 枚举类型 映射_model类中enum类型与数据库字段的映射
  4. Duff in Love
  5. Java(21)_ ^、|、运算符
  6. 性能测试第一步——查看设备的硬件配置
  7. 磁共振立体定向仪行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  8. HDU2083 简易版之最短距离【最值】
  9. 纯真IP库PHP查询
  10. 解决物理机U盘安装Kali Linux2018.1,光驱无法加载问题
  11. 在linux中cd god,Linux基础/Linux基础和命令.md · kelekele/God-Of-BigData - Gitee.com
  12. 数学建模算法与应用学习(一)
  13. 【深度学习+组合优化】深度学习和强化学习在组合优化方面有哪些应用?
  14. 没想到!2018微信年度数据报告显示使用最多的表情竟是...
  15. python 断言详细讲解用法及其案例_Python断言的最佳实践
  16. 史上最全编程语言列表,你掌握了哪些?
  17. 使用MQTTlens和Mosquitto在WIN7上完成发布和订阅
  18. c++ opencv (学习笔记)inRange函数
  19. 在MatLab中FFT和IFFT的互相转换
  20. 使用flex 布局让子元素 左右间距相等

热门文章

  1. 聚类方法(Clustering)
  2. POJ 2785 有多少种4个数相加等于0的方案(二分查找 or hash)
  3. python实现etl_为什么选择R而不是Python做ETL
  4. android monkey压力测试,Android-Monkey 压力测试
  5. android蓝牙通信_Flutter通过BasicMessageChannel实现Flutter 与Android iOS 的双向通信
  6. python怎么封装供java调用_python调用第三方java包实例
  7. 干货 | 带你理解对比学习损失函数的性质以及温度系数的作用
  8. Toast与Snackbar的那点事
  9. 全网Star最多(近20k)的Spring Boot开源教程 2019 年要继续更新了!
  10. 美团点评酒店后台故障演练系统