public boolean hasPathSum (TreeNode root, int sum) {
dfs(root, sum);
return flag;
}
public void dfs(TreeNode root, int rest ){ //rest记录剩余值
if(root == null || flag) return;
//当叶节点的值与剩余值相等时,true
if(root.val == rest && root.left == null && root.right == null){
flag = true;
return;
}
dfs(root.left , rest - root.val);
dfs(root.right , rest - root.val);
} 
京公网安备 11010502036488号