二叉树(五)二叉树中某一路径之和为某一整数
来源:互联网 发布:proe软件 编辑:程序博客网 时间:2024/05/21 08:46
思路:
对于二叉树中的某一节点,
如果是叶子节点,将其加入到path中,(一个vector)然后算vector中的和是否为需要的整数,如果是就打印出来,如果和不满足就退出函数,退出前pop vector;
如果不是叶子节点,直接将当前值加入到path中,再递归调用,当前节点变为当前节点的左节点,右节点
本函数的关键是在退出函数前要pop一次,(如果在该函数中push了);这样保证在递归调用结束的时候会一层一层的收缩
void BinSum(int sum,vector<int> &path,Node *cur){if (cur==NULL){return;}if(cur->left==NULL&&cur->right==NULL){path.push_back(cur->val);int Tempsum=vsum(path);if (Tempsum==sum){vprint(path);}}else{path.push_back(cur->val);BinSum(sum,path,cur->left);BinSum(sum,path,cur->right);}path.pop_back();}int vsum(vector<int> &path){int sum=0;for (int i=0;i<path.size();i++){sum+=path[i];}return sum;}void vprint(vector<int> &path){for(int i=0;i<path.size();i++)cout<<path[i]<<'\t';cout<<endl;}
0 0
- 二叉树(五)二叉树中某一路径之和为某一整数
- 五:二叉树中和为某一直的路径
- 二叉树中和为某一值得路径
- 二叉树中和为某一值得路径
- 二叉树中和为某一值得路径
- 二叉树中和为某一值得路径
- 二叉树中和为某一值得路径
- 二叉树中和为某一值得路径
- 二叉树中和为某一值得路径
- 二叉树中何为某一值的路径实现
- 二叉树路径的查找(和为某一值)
- 二叉树中和为某一值的路径(算法)
- 二叉树中和为某一值的路径(剑指offer+二叉树+递归)
- 二叉树19:二叉树中和为某一值的路径(**)
- 【树】二叉树中和为某一值的路径
- 【树6】二叉树中和为某一值的路径
- 题目11:二叉树中和为某一值的路径
- 二叉树中和为某一值的路径
- bootstrap中按钮的使用样式
- Lua脚本在C++下的舞步一
- 字符串的亲属关系判断
- 【iOS】instantiateViewControllerWithIdentifier初始化传值
- 天堂在下,地狱在上
- 二叉树(五)二叉树中某一路径之和为某一整数
- 解决mysql控制台查询数据乱码的问题,有图有真相
- error: GLES2/gl2.h: No such file or directory
- java拷贝文件
- Android蓝牙开发的一些经验
- linux下测试磁盘的读写IO速度(IO物理测速)
- 采访Lua发明人的一篇文章
- c# 窗体学习
- 安卓如何上传文件到服务器