当前位置:   article > 正文

【LeetCode面试经典150题】112. 路经总和

【LeetCode面试经典150题】112. 路经总和

一、题目

  • 112. 路径总和 - 力扣(LeetCode)
  • 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。

二、思路

  1. dfs,每条路径上每走过一个结点就减去targetSum,直到叶节点,如果走完完整路径后targetSum正好为0则说明则说明满足题意,此时返回true即可,见解法一

三、解法

解法一

  1. class Solution {
  2. public boolean hasPathSum(TreeNode root, int targetSum) {
  3. if (root == null) {
  4. return false;
  5. }
  6. targetSum -= root.val;
  7. if (root.left == null && root.right == null) {
  8. return targetSum == 0;
  9. }
  10. return hasPathSum(root.left, targetSum)
  11. || hasPathSum(root.right, targetSum);
  12. }
  13. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/773368
推荐阅读
相关标签
  

闽ICP备14008679号