Path Sum 深度搜索
2014-11-19 19:14
218 查看
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
return true, as there exist a root-to-leaf path
Hide Tags
Tree Depth-first Search
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->2which sum is 22.
Hide Tags
Tree Depth-first Search
/** * Definition for binary tree * 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(sum-root->val==0 && root->left==NULL && root->right==NULL) //结束条件 return true; if(hasPathSum(root->left,sum-root->val)) return true; else return hasPathSum(root->right,sum-root->val); } };
相关文章推荐
- leetcode:path sum:深度优先搜索
- [LeetCode] Path Sum II 深度搜索
- poj3126 Prime Path BFS深度优先搜索
- 23rd Feb: 数组(搜索专题)和二叉树(Path Sum专题)
- 23rd Feb: 数组(搜索专题)和二叉树(Path Sum专题)
- 杭电--1258 深度搜索(sum it up)
- 23rd Feb: 数组(搜索专题)和二叉树(Path Sum专题)
- 23rd Feb: 数组(搜索专题)和二叉树(Path Sum专题)
- 【PAT 1053】 Path of Equal Weight 深度优先搜索
- leetcode 113. Path Sum II DFS深度优先遍历
- Path Sum II深度优先找路径
- poj3126 Prime Path BFS深度优先搜索
- leetcode 437. Path Sum III 深度优先遍历DFS+两个递归函数
- 23rd Feb: 数组(搜索专题)和二叉树(Path Sum专题)
- 23rd Feb: 数组(搜索专题)和二叉树(Path Sum专题)
- [LeetCode] Sum Root to Leaf Numbers dfs,深度搜索
- 23rd Feb: 数组(搜索专题)和二叉树(Path Sum专题)
- 深度优先搜索1-A Knight's Journey(算法基础 第6周)
- 437. Path Sum III(二叉树的路径和之三)
- Leetcode_Path Sum II