zoukankan      html  css  js  c++  java
  • leetcode 112. 路径总和

    给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。

    说明: 叶子节点是指没有子节点的节点。

    示例: 
    给定如下二叉树,以及目标和 sum = 22

                  5
                 / 
                4   8
               /   / 
              11  13  4
             /        
            7    2      1
    

    返回 true, 因为存在目标和为 22 的根节点到叶子节点的路径 5->4->11->2

    对递归的使用还是不熟练,没有想到用递归的方法

    在解决树相关的问题的时候,要时刻想到递归的思维

    1 class Solution {
    2 public:
    3     bool hasPathSum(TreeNode* root, int sum) {
    4         if(root == NULL) return false;
    5         if(root->val == sum && root->left == NULL && root->right == NULL) return true;
    6         return hasPathSum(root->right, sum-root->val) || hasPathSum(root->left, sum-root->val);
    7     }
    8 };
    有疑惑或者更好的解决方法的朋友,可以联系我,大家一起探讨。qq:1546431565
  • 相关阅读:
    PHP+JQUEY+AJAX实现分页
    Flume知识扩展
    Flume高级之自定义MySQLSource
    Flume监控之Ganglia
    Flume 概述/企业案例
    Yarn (转自之乎者也)
    MapReduce如何解决数据倾斜?
    JVM调优
    Hive性能优化
    HBase的二级索引
  • 原文地址:https://www.cnblogs.com/mr-stn/p/8970050.html
Copyright © 2011-2022 走看看