力扣 | 437. 路径总和 III
2023-12-15 14:34:44
mport java.util.ArrayList;
import java.util.List;
/**
* int的取值范围:
* -2^31 ~ 2^31-1
* <p>
* -2147483648 ~ 2147483647(约等于10的9次方)
* <p>
* long long的取值范围:
* -2^63 ~ (2^63-1)
* <p>
* -9223372036854775808 ~ 9223372036854775807(约等于10的18次方)
*/
public class Problem_437_PathSum {
public int pathSum(TreeNode root, int target) {
return dfs(root, new ArrayList<>(), target);
}
public int dfs(TreeNode node, List<Long> parentPathSumList, int targetSum) {
if (node == null) return 0;
int cnt = 0;
List<Long> tmp = new ArrayList<>();
for (int i = 0; i < parentPathSumList.size(); i++) {
long sum = parentPathSumList.get(i) + node.val;
tmp.add(sum);
if (sum == targetSum) cnt++;
}
tmp.add((long) node.val);
if (node.val == targetSum) cnt++;
int leftCnt = dfs(node.left, tmp, targetSum);
int rightCnt = dfs(node.right, tmp, targetSum);
return cnt + leftCnt + rightCnt;
}
}
文章来源:https://blog.csdn.net/qq_37247026/article/details/135015658
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!