关闭

【刷题之路】二叉树前中后序遍历(递归)

标签: 刷题算法二叉树遍历递归
101人阅读 评论(0) 收藏 举报

经典算法

class TreeToSequence {
public:
    vector<vector<int> > convert(TreeNode* root) {
        // write code here
        vector<int> front;
        vector<int> mid;
        vector<int> back;
        vector<vector<int> > res;
        fronttree(root,front);
        res.push_back(front);
        midtree(root,mid);
        res.push_back(mid);
        backtree(root,back);
        res.push_back(back);
        return res;
    }
    void fronttree(TreeNode* root,vector<int> &res){
        if(root==NULL) return;
        res.push_back(root->val);
        fronttree(root->left,res);
        fronttree(root->right,res);
    }
    void midtree(TreeNode* root,vector<int> &res){
        if(root==NULL) return;
        midtree(root->left,res);
        res.push_back(root->val);
        midtree(root->right,res);
    }
    void backtree(TreeNode* root,vector<int> &res){
        if(root==NULL) return;
        backtree(root->left,res);
        backtree(root->right,res);
        res.push_back(root->val);
    }
};

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:10537次
    • 积分:799
    • 等级:
    • 排名:千里之外
    • 原创:72篇
    • 转载:2篇
    • 译文:0篇
    • 评论:1条