LeetCode-Path Sum III
2016-11-23 17:25
423 查看
You are given a binary tree in which each node contains an integer value.
Find the number of paths that sum to a given value.
The path does not need to start or end at the root or a leaf, but it must go downwards (traveling only from parent nodes to child nodes).
The tree has no more than 1,000 nodes and the values are in the range -1,000,000 to 1,000,000.
Example:
Subscribe to see which companies asked
this question
此题主要点在于寻求子路径中满足条件的结点,用 res 作为符合条件的路径数,先序遍历二叉树,对于每一个节点都有记录了一条从根节点到当前节点到路径,同时用一个变量curSum记录路径节点总和,然后我们看curSum和sum是否相等,相等的话结果res加1,不等的话我们来继续查看子路径和有没有满足题意的,做法就是每次去掉路径中第一个节点,看路径和是否等于给定值,注意最后必须留一个节点,不能全去掉了,因为如果全去掉了,路径之和为0,而如果假如给定值刚好为0的话就会有问题。
Find the number of paths that sum to a given value.
The path does not need to start or end at the root or a leaf, but it must go downwards (traveling only from parent nodes to child nodes).
The tree has no more than 1,000 nodes and the values are in the range -1,000,000 to 1,000,000.
Example:
root = [10,5,-3,3,2,null,11,3,-2,null,1], sum = 8 10 / \ 5 -3 / \ \ 3 2 11 / \ \ 3 -2 1 Return 3. The paths that sum to 8 are: 1. 5 -> 3 2. 5 -> 2 -> 1 3. -3 -> 11
Subscribe to see which companies asked
this question
此题主要点在于寻求子路径中满足条件的结点,用 res 作为符合条件的路径数,先序遍历二叉树,对于每一个节点都有记录了一条从根节点到当前节点到路径,同时用一个变量curSum记录路径节点总和,然后我们看curSum和sum是否相等,相等的话结果res加1,不等的话我们来继续查看子路径和有没有满足题意的,做法就是每次去掉路径中第一个节点,看路径和是否等于给定值,注意最后必须留一个节点,不能全去掉了,因为如果全去掉了,路径之和为0,而如果假如给定值刚好为0的话就会有问题。
相关文章推荐
- LeetCode No.437 Path Sum III
- LeetCode笔记:437. Path Sum III
- leetcode[437] PathSum III 个人题解
- LeetCode 437. Path Sum III
- LeetCode-437. Path Sum III
- LeetCode Path Sum III
- [leetcode] 437. Path Sum III 解题报告
- 【LeetCode】Path Sum III 解题报告
- leetcode 437. Path Sum III(路径和)(DFS)
- LeetCode - 437. Path sum III
- leetcode-437-Path Sum III
- LeetCode 437. Path Sum III (STL map前缀和)
- leetcode[Path Sum III]//待整理多种解法
- [LeetCode] 437. Path Sum III 路径和 III
- leetcode_437. Path Sum III-二叉树
- [LeetCode]437. Path Sum III
- [LeetCode]437. Path Sum III(求二叉树中路径和等于sum的数量)
- LeetCode 437 Path Sum III
- LeetCode 437 Path Sum III 题解
- leetcode 437. Path Sum III 深度优先遍历DFS+两个递归函数