二叉樹的路徑和

給定一個(gè)二叉樹,找出所有路徑中各節(jié)點(diǎn)相加總和等于給定 目標(biāo)值 的路徑。一個(gè)有效的路徑,指的是從根節(jié)點(diǎn)到葉節(jié)點(diǎn)的路徑。

代碼:

/**
 * Definition of TreeNode:
 * public class TreeNode {
 *     public int val;
 *     public TreeNode left, right;
 *     public TreeNode(int val) {
 *         this.val = val;
 *         this.left = this.right = null;
 *     }
 * }
 */
public class Solution {
    /**
     * @param root the root of binary tree
     * @param target an integer
     * @return all valid paths
     */
    public List<List<Integer>> binaryTreePathSum(TreeNode root, int target) {
        List<List<Integer>> list=new ArrayList<>();
        List<Integer> temp=new ArrayList<>();
        findPath(root,target,temp,list);
        return list;
    }
    
    public void findPath(TreeNode root,int target,List<Integer> temp,List<List<Integer>> path)
    {
        if (root == null)
            return;
        if (root.left == null && root.right == null) {
            if (root.val == target) {
                List<Integer> temp2=new ArrayList<>();
                temp2.addAll(temp);
                temp2.add(root.val);
                path.add(temp2);
            }
        } else {
            temp.add(root.val);
            findPath(root.left, target - root.val, temp,path);
            findPath(root.right, target - root.val, temp,path);
            temp.remove(temp.size() - 1);
        }
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 描述 給定一個(gè)二叉樹,找出所有路徑中各節(jié)點(diǎn)相加總和等于給定目標(biāo)值的路徑。 一個(gè)有效的路徑,指的是從根節(jié)點(diǎn)到葉節(jié)點(diǎn)的...
    6默默Welsh閱讀 727評論 0 0
  • 描述 給定一個(gè)二叉樹,找出所有路徑中各節(jié)點(diǎn)相加總和等于給定 目標(biāo)值 的路徑。一個(gè)有效的路徑,指的是從根節(jié)點(diǎn)到葉節(jié)點(diǎn)...
    lyoungzzz閱讀 370評論 0 0
  • 版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。 難度:普通 要求: 給定一個(gè)二叉樹,找出所有路徑中各節(jié)點(diǎn)相加...
    柒黍閱讀 335評論 0 0
  • 描述 給一棵二叉樹和一個(gè)目標(biāo)值,設(shè)計(jì)一個(gè)算法找到二叉樹上的和為該目標(biāo)值的所有路徑。 路徑可以從任何結(jié)點(diǎn)出發(fā)和結(jié)束,...
    6默默Welsh閱讀 931評論 0 0
  • 樹的概述 樹是一種非常常用的數(shù)據(jù)結(jié)構(gòu),樹與前面介紹的線性表,棧,隊(duì)列等線性結(jié)構(gòu)不同,樹是一種非線性結(jié)構(gòu) 1.樹的定...
    Jack921閱讀 4,780評論 1 31

友情鏈接更多精彩內(nèi)容