码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode112——path sum

时间:2015-12-07 20:37:54      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

  看到树就有一种本能的畏惧感,水平不足嘛。但是水平不够就越要敢于挑战,本题的意思是找到一条路径,这条路径上的和等于给出的数。这条路径必须是从叶子到根节点的哈。想想,如果从根节点开始找,每次sum减掉val则到了叶子节点的时候,sum肯定等于叶子节点的值。否则,就没有这么一条路径。朴素深搜,好装逼的词!!

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
 * };
 */
class Solution 
{
public:
    bool 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));
    }
};

 

LeetCode112——path sum

标签:

原文地址:http://www.cnblogs.com/thewaytomakemiracle/p/5027273.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!