采用递归的方法,将累计的和值逐层下推
public boolean hasPathSum(TreeNode root, int sum) {
return eSum(root, 0, sum);
}
private boolean eSum(TreeNode node, int s, int sum){
if(node == null){
return false;
}
s += node.val;
if(node.left==null && node.right==null){
return s==sum;
}
return eSum(node.left, s, sum) || eSum(node.right, s, sum);
}