struct TreeNode {
TreeNode* left;
TreeNode* Right;
double value;
};
void path(TreeNode *t,int sum,int n,vector<TreeNode *> &v) {
if (n == sum&&t->left==NULL&&t->Right==NULL) {
for (int i = 0; i < v.size(); i++)
cout<<v[i]->value<<" ";
cout << endl;
}
else if (n < sum) {
if (t->left){
v.push_back(t->left);
path(t->left, sum, n + t->left->value, v);
v.pop_back();
}
if (t->Right) {
v.push_back(t->Right);
path(t->left, sum, n + t->Right->value, v);
}
}
}
剑指offer34
最新推荐文章于 2022-05-13 11:04:59 发布