LeetCode(129) Sum Root to Leaf Numbers
2015-08-07 19:48
537 查看
深度优先搜索,没什么好讲的,已经很熟练了。
[code]/** * 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: void dfs(TreeNode *root, string &path, vector<int> &pathNum) { if(root->left == NULL && root->right == NULL) { path += to_string(root->val); int tmp = stoi(path); pathNum.push_back(tmp); path.pop_back(); return; } path += to_string(root->val); if(root->left != NULL) dfs(root->left, path, pathNum); if(root->right != NULL) dfs(root->right, path, pathNum); path.pop_back(); } int sumNumbers(TreeNode* root) { if(root == NULL) return 0; vector<int> pathNum; string path; dfs(root, path, pathNum); int sum = 0; for(int i = 0; i < pathNum.size(); i++) { sum += pathNum[i]; } return sum; } };
相关文章推荐
- sendmail 发送html 的邮件
- MDK5 and STM32Cube
- POJ1505:Copying Books 解题心得
- Ubuntu 14.10 下Server版本中文乱码问题
- 杭电2149Public Sale
- 12.1 Image classification with deep learning常用模型
- 海量Web日志分析 用Hadoop提取KPI统计指标
- C++ 指针函数介绍
- jsoncpp详解
- Oracle经典查询练手第三篇
- Ensemble Learning
- 各大网站CSS代码初始化集合
- 快速幂模板
- mysql物理级别热备脚本
- log4j的基本配置参数
- [LeetCode]Contains Duplicate II
- Android学习日志: 执行.getResponseCode()方法时出现错误常
- 【JavaMail开发总结】开发前的配置
- [Tyvj 1729]文艺平衡树
- Intellij--File Status Highlights文件高亮规则