LintCode 二叉树的所有路径
来源:互联网 发布:广东卫视网络电视回看 编辑:程序博客网 时间:2024/06/06 08:41
题目描述:
给一棵二叉树,找出从根节点到叶子节点的所有路径。
您在真实的面试中是否遇到过这个题? Yes
样例
给出下面这棵二叉树:
1
/ \
2 3
\
5
所有根到叶子的路径为:
[
“1->2->5”,
“1->3”
]
思路分析:
dfs记录路径。
当一个节点的左右子树都为NULL的时候,就代表该节点为叶子节点。此时将string 插入到vector中~
to_string函数的作用是将整型化为string类型。
ac代码:
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } */class Solution {public: /** * @param root the root of the binary tree * @return all root-to-leaf paths */ vector<string> v; void dfs(TreeNode* root,string s) { if(root->left==NULL && root->right==NULL) { v.push_back(s); return ; } string ww; if(root->left!=NULL) { ww=s+"->"; ww+=to_string(root->left->val); dfs(root->left,ww); } if(root->right!=NULL) { ww=s+"->"; ww+=to_string(root->right->val); dfs(root->right,ww); } } vector<string> binaryTreePaths(TreeNode* root) { // Write your code here if(!root) return v; dfs(root,to_string(root->val)); return v; }};
0 0
- LintCode- 二叉树的所有路径
- lintcode----二叉树的所有路径
- lintcode,二叉树的所有路径
- lintcode二叉树的所有路径
- LintCode | 480. 二叉树的所有路径
- LintCode 二叉树的所有路径
- 二叉树的所有路径-LintCode
- LintCode-二叉树的所有路径
- lintcode二叉树的所有路径
- lintcode 二叉树的所有路径
- LintCode 二叉树的所有路径
- lintcode--二叉树的所有路径
- [LintCode]480.二叉树的所有路径
- 二叉树的所有路径-LintCode
- LintCode 480-二叉树的所有路径
- lintcode(480)——二叉树的所有路径
- lintcode binary-tree-paths 二叉树的所有路径
- lintcode——二叉树的所有路径
- 记录windows驱动开发inf文件详解
- 数组替换——(问题还未解决)
- 替换元素
- linux认识1
- 一个前端所需具备的PS能力
- LintCode 二叉树的所有路径
- Spark划分Shuffle依赖以及创建Stage的流程
- 反卷积(转置卷积)
- JS提交表单后回跳的细节处理
- LintCode 二叉树的后序遍历
- 微信接入错误
- Mac上解压.7z文件(已解决)
- 从零开始玩转logback
- 求π近似值