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     }
复制代码

 

posted @   daniel456  阅读(117)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示