24.路径总和

Posted root@su

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了24.路径总和相关的知识,希望对你有一定的参考价值。

/*给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。

叶子节点 是指没有子节点的节点。
解题思路:

从根节点开始,每当遇到一个节点的时候,从目标值里扣除节点值,一直到叶子节点判断目标值是不是被扣完。

/**
 * Definition for a binary tree node.
 * public class TreeNode 
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() 
 *     TreeNode(int val)  this.val = val; 
 *     TreeNode(int val, TreeNode left, TreeNode right) 
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     
 * 
 */
class Solution 
     public boolean hasPathSum(TreeNode root, int sum) 
      return  helper(root,0,sum);
    
    public boolean helper(TreeNode root,int cur,int sum)
    
      if(root==null)
          return false;
        cur=cur+root.val;
        if(root.left==null&&root.right==null)
        
            return cur==sum;
        else
        
            return helper(root.left,cur,sum)|| helper(root.right,cur,sum);
        
    



 

以上是关于24.路径总和的主要内容,如果未能解决你的问题,请参考以下文章

路径总和(IIIIII)| 树

用于计算过去 24 个月及以上总和的 SQL

113. 路径总和 II

[leetcode] 113. 路径总和 II

二叉树18:路径总和两道题

112 Path Sum 路径总和