zoukankan      html  css  js  c++  java
  • 112. Path Sum

    Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.

    For example:
    Given the below binary tree and sum = 22,

                  5
                 / 
                4   8
               /   / 
              11  13  4
             /        
            7    2      1
    

    return true, as there exist a root-to-leaf path 5->4->11->2 which sum is 22.

    题目含义:能否找到一条根节点到叶子节点的路径,使得各个节点值的总和等于给定的数

     1     private boolean finded = false;
     2     private void validPathSum(TreeNode node,int curSum,int sum)
     3     {
     4         if (node == null || finded) return;
     5         curSum += node.val;
     6         if (node.left == null && node.right==null && curSum == sum)
     7         {
     8             finded=true;
     9             return;
    10         }
    11         validPathSum(node.left,curSum,sum);
    12         validPathSum(node.right,curSum,sum);
    13     }    
    14     public boolean hasPathSum(TreeNode root, int sum) {
    15         if (root == null) return false;
    16         validPathSum(root,0,sum);
    17         return finded;        
    18     }
  • 相关阅读:
    【AngularJS】学习资料
    Anaconda环境安装
    ORM表之间高级设计
    drf序列化和反序列化
    安装与使用django-restframework
    django-restframework
    顶象滑块验证码
    Restful接口规范
    Web API接口
    BBS配置
  • 原文地址:https://www.cnblogs.com/wzj4858/p/7707205.html
Copyright © 2011-2022 走看看