题解 | #二叉树中和为某一值的路径(一)#

二叉树中和为某一值的路径(一)

http://www.nowcoder.com/practice/508378c0823c423baa723ce448cbfd0c

思路

  1. 遍历二叉树
  2. 维护一个变量res,res的值为从根节点到当前结点路径中结点值的和
    • 遍历到当前节点时令res加上结点值,再遍历左右子树
  3. 当遇到叶子节点时,判断res是否等于sum
    • 若等于则设置r为true
    • 若不等于则继续遍历
  4. 当前结点遍历结束后令res减去结点值

代码

public class Solution {

    int res=0;
    boolean r=false;
    public boolean hasPathSum (TreeNode root, int sum) {
        if(root==null) return false;
        digui(root, sum);
        return r;
    }

    public void digui(TreeNode root,int sum){
    //如果当前为空结点,则什么也不干
     if(root==null){
         return ;
     }
     //res加上当前结点的值
     res+=root.val;
     //如果当前节点为叶子结点且res值等于sum,设置r为true
     if(root.right==null&&root.left==null&&res==sum){
         r=true;
     }
     digui(root.left,sum);
     digui(root.right, sum); 
     //遍历完左右子树后更新res值(减去当前结点的值)
     res-=root.val;
    }
}
全部评论

相关推荐

03-17 23:54
黑龙江大学 Java
来个白菜也好啊qaq:可以的,大厂有的缺打手
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
# 一张图晒出你司的标语 #
4387次浏览 77人参与
# AI面会问哪些问题? #
28315次浏览 569人参与
# 米连集团26产品管培生项目 #
13409次浏览 285人参与
# 你的实习产出是真实的还是包装的? #
20448次浏览 343人参与
# 找AI工作可以去哪些公司? #
9412次浏览 251人参与
# 春招至今,你的战绩如何? #
66535次浏览 586人参与
# 开放七大实习专项,百度暑期实习值得冲吗 #
15418次浏览 223人参与
# 从事AI岗需要掌握哪些技术栈? #
9255次浏览 325人参与
# 中国电信笔试 #
32080次浏览 295人参与
# 你做过最难的笔试是哪家公司 #
34499次浏览 249人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
340988次浏览 2175人参与
# 哪些公司真双非友好? #
69708次浏览 289人参与
# 阿里笔试 #
179060次浏览 1318人参与
# 机械人避雷的岗位/公司 #
62709次浏览 393人参与
# 小马智行求职进展汇总 #
25140次浏览 80人参与
# 第一份工作一定要去大厂吗 #
14927次浏览 122人参与
# 金三银四,你的春招进行到哪个阶段了? #
22276次浏览 284人参与
# 担心入职之后被发现很菜怎么办 #
291390次浏览 1210人参与
# 为了减少AI幻觉,你注入过哪些设定? #
26286次浏览 310人参与
# 应届生第一份工资要多少合适 #
20694次浏览 86人参与
# HR最不可信的一句话是__ #
6366次浏览 114人参与
# 沪漂/北漂你觉得哪个更苦? #
10083次浏览 194人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务