24、二叉树中和为某一值的路径
来源:互联网 发布:中教数据库 评职称 编辑:程序博客网 时间:2024/05/19 15:44
题目描述:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。
时间限制:1秒 空间限制:32768K
思路:dfs深度优先搜索
代码:
/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { }};*/class Solution {public: vector<int> temp; vector<vector<int> > res; void dfsFind(TreeNode* node,int num){ temp.push_back(node->val); if(node->val==num && node->left==NULL && node->right==NULL) res.push_back(temp); else{ if(node->left!=NULL) dfsFind(node->left,num - node->val);//注意这里使用的第二个参数,是给定值-当前值 if(node->right!=NULL) dfsFind(node->right,num - node->val); } //需要弹出是因为要回退到上一节点,不然temp容器只会增加不会减少 temp.pop_back(); } vector<vector<int> > FindPath(TreeNode* root,int expectNumber) { if(root!=NULL) dfsFind(root,expectNumber); return res; }};
阅读全文
0 0
- 24、二叉树中和为某一值的路径
- 【树】二叉树中和为某一值的路径
- 【树6】二叉树中和为某一值的路径
- 题目11:二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- 二叉树中和为某一值的所有路径
- 题目1368:二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- 1368:二叉树中和为某一值的路径 @jobdu
- 二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- Q25:二叉树中和为某一值的路径
- 剑指offer:二叉树中和为某一值的路径
- 移动端IOS使用EasyAr实现非unity(unity)案例介绍
- IP
- idea快捷键
- case when
- Qt之高级网络操作(HTTP/FTP快速上手)
- 24、二叉树中和为某一值的路径
- 树状数组,区间求和
- Java文件上传功能代码 —— 普遍适用
- git commit
- RESTful 注解简述
- 【Linux】初窥Linux 之 我最常用的20条命令
- Android中Cursor类的概念和用法
- caffe学习
- Python Tuple(元组) tuple()方法