Fork me on GitHub

二叉树中和为某一值的路径

题目描述

输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)

解决方案

/
struct TreeNode {
int val;
struct TreeNode
left;
struct TreeNode right;
TreeNode(int x) :
val(x), left(NULL), right(NULL) {
}
};
/

class Solution {
public:
vector> vec;
vector v;
vector > FindPath(TreeNode* root,int expectNumber)
{
if(root == NULL) return vec;
v.push_back(root->val);
if( (expectNumber-root->val == 0) && root->left == NULL && root->right == NULL )
{
vec.push_back(v);
}
FindPath(root->left,expectNumber-root->val);
FindPath(root->right,expectNumber-root->val);
if(v.size() != 0)
v.pop_back();
return vec;
}
};

本文标题:二叉树中和为某一值的路径

文章作者:LiuXiaoKun

发布时间:2019年03月15日 - 16:03

最后更新:2019年03月15日 - 16:03

原始链接:https://LiuZiQiao.github.io/2019/03/15/二叉树中和为某一值的路径/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

0%