112-Path Sum
Description
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.
Note: A leaf is a node with no children.
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.
問題描述
給定一個二叉樹和sum,判斷二叉樹是否有一條從根節點到葉子節點的路徑, 使得路徑上的所有節點的值之和等於sum
問題分析
解法1
class Solution {
public boolean hasPathSum(TreeNode root, int sum) {
if(root == null) return false;
if(root.left == null && root.right == null) return sum == root.val;
return hasPathSum(root.left, sum - root.val) || hasPathSum(root.right, sum - root.val);
}
}
解法2
class Solution {
public boolean hasPathSum(TreeNode root, int sum) {
Stack<TreeNode> stack = new Stack();
stack.push(root);
while(!stack.isEmpty() && root != null){
TreeNode cur = stack.pop() ;
if(cur.left == null && cur.right == null){
if(cur.val == sum) return true;
}
if(cur.right != null){
cur.right.val = cur.val + cur.right.val ;
stack.push(cur.right) ;
}
if(cur.left != null){
cur.left.val = cur.val + cur.left.val;
stack.push(cur.left);
}
}
return false ;
}
}
相關文章
- 秒殺 2Sum 3Sum 4Sum 演算法題演算法
- GCD SUMGC
- Sum Problem
- 集合sum
- 15+18、3Sum 4Sum
- Range Minimum Sum
- B - Minimum Sum
- Missing Subsequence Sum
- Path Sum III
- Leetcode Path SumLeetCode
- leetcode Sum系列LeetCode
- Sum of Left Leaves
- Path-sum
- LeetCode | 1 Two SumLeetCode
- SQL groupby sum 用法SQL
- 7.22 APPROX_SUMAPP
- the Sum of Cube hd 5053
- Leetcode 39 Combination SumLeetCode
- md5sum
- Leetcode 1 two sumLeetCode
- B. Missing Subsequence Sum
- LeetCode-1 Two SumLeetCode
- LeetCode 112. Path SumLeetCode
- tf.reduce_sum用法
- python: leetcode - 1 Two SumPythonLeetCode
- python--iter()+next()+sum()Python
- 829. Consecutive Numbers Sum
- leetcode-39-Combination SumLeetCode
- Leetcode 40 Combination Sum IILeetCode
- [LintCode] 3Sum Smaller
- Linux基礎命令—sumLinux
- Leetcode 15 3SumLeetCode
- Leetcode 18 4SumLeetCode
- [LeetCode]1.Two SumLeetCode
- 404-Sum of Left Leaves
- 64. Minimum Path Sum
- 437-Path Sum III
- 113-Path Sum II