112. Path Sum(DFS)
来源:互联网 发布:java正则表达式匹配{} 编辑:程序博客网 时间:2024/06/05 17:22
1. Description
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.
2. Analysis
做法和 “257. Binary Tree Paths(DFS)”其实是一样的。只不过这样做有点low,把所有的结果都找出去,再遍历结果查找是否存在路径上结点总和为sum的路径,复杂度为
3. code
比较low的解法:
/** * 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: static void recursizeBTP(TreeNode* root, int count, vector<int>& res) { if(root == NULL) return; count += root->val; if(root->left == NULL && root->right == NULL) { res.push_back(count); return; } recursizeBTP(root->left, count, res); recursizeBTP(root->right, count, res); return; } bool hasPathSum(TreeNode* root, int sum) { if(root == NULL) return false; if(root->left == NULL && root->right == NULL) { if(root->val == sum) return true; else return false; } int count = root->val; vector<int> res; TreeNode * node = root; if(root->left != NULL) { recursizeBTP(root->left, count, res); } if(root->right != NULL) { recursizeBTP(root->right, count, res); } for(int i = 0; i < res.size(); i++) { if(res[i] == sum) return true; } return false; }};
阅读全文
0 0
- 112. Path Sum(DFS)
- DFS:112. Path Sum
- Leetcode dfs Path Sum
- DFS Path Sum II
- Path Sum & Path Sum II | LeetCode DFS
- 112:Path Sum【树】【DFS】
- [leetcode][tree][dfs] Path Sum
- LeetCode 112 Path Sum (DFS)
- 【二叉树】DFS计算路径和,保存路径【113. Path Sum II】【112. Path Sum】
- leetcode 112. Path Sum DFS深度优先遍历
- 【leetcode】113Path Sum II(DFS输出路径)
- 112. Path Sum(y)
- 112. Path Sum (重要)
- 1053. Path of Equal Weight (30) -- dfs (leetcode 113. Path Sum II)
- 113:Path Sum II【树】【DFS】
- DFS Binary Tree Maximum Path Sum
- [leetcode][tree][dfs] Path Sum II
- [leetcode][dfs] Binary Tree Maximum Path Sum
- tftp下载内核与根文件系统到开发板
- Linux——关机太慢
- 软件工程—让软件包自带commit id
- spark 批量写入redis (pipeline + 分批提交)
- 数学之美笔记3
- 112. Path Sum(DFS)
- Atitit 手机号码选号 规范 流程 attilax总结 v2 r99.docx
- Atititi. naming spec 联系人命名与remark备注指南规范v5 r99.docx
- 浅析v8中weakSet和weakMap(待续)
- 变量作用域
- 洛谷P1529 回家 Bessie Come Home
- Atitit 号码规范 靓号指南 attilax总结 v4 r926.docx
- Linux系统操作练习(一)
- atitit tag标签概念与原理 attilax总结 v2 r922.docx