Path Sum 路径和

Path Sum 路径和

给一个二叉树,和sum,判断是否存在一条路径上的节点之和等于sum

img

Input: root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22
Output: true

思路

递归向下求解,直到叶子节点并且sum==0时,说明存在一个满足条件的path

public boolean hasPathSum(TreeNode root, int targetSum) {
    
    
        if(root==null){
    
    
            return false;
        }
        if(root.left==null&root.right==null){
    
    
            return targetSum==root.val;
        }
        boolean l = hasPathSum(root.left,targetSum-root.val);
        boolean r = hasPathSum(root.right,targetSum-root.val);
        return l||r;
    }

Tag

tree recursion

Guess you like

Origin blog.csdn.net/edisonzhi/article/details/115758820