LeetCode题解——Path Sum

原创 2015年11月17日 21:55:48

Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.

For example:
Given the below binary tree and sum = 22,
              5
             / \
            4   8
           /   / \
          11  13  4
         /  \      \
        7    2      1

return true, as there exist a root-to-leaf path 5->4->11->2 which sum is 22.

it's easy to use recursion to solve the problem

/**
 * 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) return false;
        if(!root->left && !root->right) return sum==root->val;
        bool flage = false;
        if(root->left) flage = hasPathSum(root->left,sum-root->val);
        if(flage) return true;
        else{
            if(root->right) return hasPathSum(root->right,sum-root->val);
            else return false;
        }
    } 
};


版权声明:本文为博主原创文章,未经博主允许不得转载。

[C++]LeetCode: 90 Path Sum

题目: Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding u...
  • cinderella_niu
  • cinderella_niu
  • 2015年01月12日 15:01
  • 790

LeetCode112——Path Sum

Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all...
  • booirror
  • booirror
  • 2015年01月13日 18:34
  • 3304

leetCode 64.Minimum Path Sum (最短路) 解题思路和方法

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which...
  • xygy8860
  • xygy8860
  • 2015年07月17日 16:25
  • 927

Leetcode 437. Path Sum III 路径和3 解题报告

1 解题思想这道题就是给了一个二叉树和一个目标和sum 找出所有路径,这个路径的和等于sum,只允许从父节点到子节点的路线所以方法么,也就是最基本的dfs,不多说,对了可以看看之前相关的题目: L...
  • MebiuW
  • MebiuW
  • 2016年10月23日 14:29
  • 6994

LeetCode 112 — Path Sum(C++ Java Python)

题目: 题目翻译: 分析: C++实现: Java实现: Python实现: 感谢阅读,欢迎评论!...
  • dragon_dream
  • dragon_dream
  • 2014年04月03日 16:01
  • 2309

leetcode 666. Path Sum IV

leetcode 666 contest 43
  • feifeiiong
  • feifeiiong
  • 2017年09月01日 17:22
  • 601

【LeetCode with Python】 Path Sum

Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all...
  • nerv3x3
  • nerv3x3
  • 2014年06月27日 18:00
  • 1784

【leetcode c++】113 Path Sum II

Path Sum II Given a binary tree and a sum, find all root-to-leaf paths where each path's sum eq...
  • hqq39
  • hqq39
  • 2015年08月01日 00:06
  • 550

[python]leetcode(437). Path Sum III

problem You are given a binary tree in which each node contains an integer value. Find the...
  • PKU_Jade
  • PKU_Jade
  • 2017年09月15日 09:55
  • 205

leetcode 113. Path Sum II-路径和|回溯算法

原题链接:113. Path Sum II 【思路】 采用回溯算法。回溯算法要求我们准备一个中间集 temp,一个结果集 res。这里和以往题目递归中包含循环,循环中嵌套递归的不同。本题没有包含循...
  • happyaaaaaaaaaaa
  • happyaaaaaaaaaaa
  • 2016年06月11日 15:35
  • 837
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode题解——Path Sum
举报原因:
原因补充:

(最多只允许输入30个字)