112. Path Sum (重要)
来源:互联网 发布:防范电信网络诈骗 编辑:程序博客网 时间:2024/06/07 17:44
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.
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:bool hasPathSum(TreeNode* root, int sum) {if (root == NULL){return false;}return helper(root, sum, 0);}private:bool helper(TreeNode* root, int sum, int curSum){curSum += root->val;if (root->left == NULL&&root->right == NULL){return curSum == sum;}bool left = false;if (root->left){left = helper(root->left, sum, curSum);}bool right = false;if (root->right){right = helper(root->right, sum, curSum);}return left || right;}};
或者
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:bool hasPathSum(TreeNode* root, int sum) {if (root == NULL){return false;}return helper(root, sum, 0);}private:bool helper(TreeNode* root, int sum, int curSum){curSum += root->val;if (root->left == NULL&&root->right == NULL){return curSum == sum;}bool found = false;if (root->left){found = helper(root->left, sum, curSum);}if (!found&&root->right){found = helper(root->right, sum, curSum);}return found;}};
0 0
- 112. Path Sum (重要)
- leetcode -- Binary Tree Maximum Path Sum -- 重要
- 112. Path Sum(y)
- 112. Path Sum(DFS)
- 112. Path Sum && 113. Path Sum II
- 112. Path Sum&113. Path Sum II
- LeetCode 112. Path Sum(路径和)
- 112. Path Sum (二叉树)
- 【leetcode】112. Path Sum(Python & C++)
- 112.Path Sum
- LeetCode 112. Path Sum
- [LeetCode]112.Path Sum
- 【LeetCode】112.Path Sum
- [Leetcode] 112. Path Sum
- [leetcode] 112.Path Sum
- 112.Path Sum
- 112. Path Sum
- 112. Path Sum
- 环境变量
- 在主线程中不能连接网络
- typeof 和 instanceof
- butterknife 打包混淆问题
- servlet 之redirect()与forward()的区别
- 112. Path Sum (重要)
- Android中关于View的ScrollTo、ScrollBy
- Java Web实战05--Spring之bean引用
- 优雅的使用git搭建项目环境教程--轻松拉取、合并protected的分支
- bean标签的解析及注册(四)注册解析的beanDefinition
- 机器视觉标定 与 halcon标定板制作介绍
- php+json+ajax+jquery小例子
- 有序数组转换为平衡二叉树(BST)
- 就这样活着吧