- 题目描述
给定一个二叉树,返回所有从根节点到叶子节点的路径。
说明: 叶子节点是指没有子节点的节点。
- 题解
深度优先搜索
- 代码
class Solution {
public:
void dfs(TreeNode* root,string tmp){
if (!root) return ;
if (!root->left&&!root->right){
res.push_back(tmp);
return;
}
if (root->left) dfs(root->left,tmp+"->"+to_string(root->left->val));
if (root->right) dfs(root->right,tmp+"->"+to_string(root->right->val));
}
vector<string> binaryTreePaths(TreeNode* root) {
if (!root) return vector<string>{};
string tmp=to_string(root->val);
dfs(root,tmp);
return res;
}
vector<string> res;
};