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.路径总和的主要内容,如果未能解决你的问题,请参考以下文章