题目描述:打印二叉树从根到叶子节点的所有路径。
解题思路:使用DFS
class Solution {
public:
void DFS(TreeNode* root, vector<string> &v, string s)
{
if(root->left == NULL && root->right == NULL)
{
v.push_back(s);
return;
}
if(root->left)
DFS(root->left, v, s + "->" + to_string(root->left->val));
if(root->right)
DFS(root->right, v, s + "->" + to_string(root->right->val));
}
vector<string> binaryTreePaths(TreeNode* root)
{
vector<string> v;
if(root)
DFS(root, v, to_string(root->val));
return v;
}
};