题目
题解
public class Solution {
/**
* 给定一个二叉树root和一个值 sum ,判断是否有从根节点到叶子节点的节点值之和等于 sum 的路径
*
*
* @param root TreeNode类
* @param sum int整型
* @return bool布尔型
*/
public boolean hasPathSum (TreeNode root, int sum) {
if (null == root) {
return false;
}
if (sum - root.val == 0 && isLeafNode(root)) {
return true;
}
return hasPathSum(root.left, sum - root.val) ||
hasPathSum(root.right, sum - root.val);
}
/**
* 判断节点是不是叶子节点
*
*
* @param node TreeNode类
* @return bool布尔型
*/
public boolean isLeafNode(TreeNode node) {
return null == node.left && null == node.right;
}
}