【easy】257. Binary Tree Paths 二叉树找到所有路径

http://blog.csdn.net/crazy1235/article/details/51474128

花样做二叉树的题……居然还是不会么……

 

/**
 * 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 binaryTreePaths(vector<string>& result,TreeNode* root,string t)  
    {  
        if(!root->left&&!root->right)  
        {  
             result.push_back(t);  
             return;  
        }  
        if(root->left)  
            binaryTreePaths(result,root->left,t+"->"+to_string(root->left->val));  
        if(root->right)  
            binaryTreePaths(result,root->right,t+"->"+to_string(root->right->val));      
              
    }  
  
    vector<string> binaryTreePaths(TreeNode* root) {  
        vector<string> result;  
        if(root==NULL) return result;  
          
        binaryTreePaths(result,root,to_string(root->val));  
          
        return result;  
          
          
    }  
};

 

posted @ 2018-02-13 08:54  Sherry_Yang  阅读(125)  评论(0编辑  收藏  举报