题目:
分析:
这道题目我们用回溯法去做回非常的好做,不过会涉及到剪枝的问题,还好这里的数据量应该不大,即使不剪枝,也不影响结果
代码:
class Solution {
boolean res=false;
public boolean hasPathSum(TreeNode root, int sum) {
if(root==null) return false;
help(root,sum,0);
return res;
}
public void help(TreeNode root, int sum,int now) {
now+=root.val;
if(now==sum && root.left==null &&root.right==null){
res=true;
return;
}
if(root.left!=null){
help(root.left,sum,now);
}
if(root.right!=null){
help(root.right,sum,now);
}
}
}