zoukankan      html  css  js  c++  java
  • 第7章 二叉树 || 第2节 递归二叉树的序列打印练习题

    请用递归方式实现二叉树的先序、中序和后序的遍历打印。

    给定一个二叉树的根结点root,请依次返回二叉树的先序,中序和后续遍历(二维数组的形式)。

    /*
    struct TreeNode {
        int val;
        struct TreeNode *left;
        struct TreeNode *right;
        TreeNode(int x) :
                val(x), left(NULL), right(NULL) {
        }
    };*/
    
    class TreeToSequence {
    public:
        vector<vector<int>> res;
        vector<int> vec;
        void PreOrder(TreeNode* root)
        {
            if(root)
            {
                vec.push_back(root->val);
                PreOrder(root->left);
                PreOrder(root->right);
            }
            return ;
        }
        void InOrder(TreeNode* root)
        {
            if(root)
            {
                InOrder(root->left);
                vec.push_back(root->val);
                InOrder(root->right);
            }
            return ;
        }
        void PostOrder(TreeNode* root)
        {
            if(root)
            {
                PostOrder(root->left);
                PostOrder(root->right);
                vec.push_back(root->val);
            }
            return ;
        }
        vector<vector<int> > convert(TreeNode* root) {
            // write code here
            if(root==NULL)
                return res;
            PreOrder(root);
            res.push_back(vec);
            vec.clear();
            InOrder(root);
            res.push_back(vec);
            vec.clear();
            PostOrder(root);
            res.push_back(vec);
            return res;
        }
    };
  • 相关阅读:
    Array
    ie兼容
    webpack----entry
    webpack——html-webpack-plugin
    webpack 报错 path is not defind
    PHPStorm自动压缩YUI Compressor配置
    fly
    Math.max得到数组中最大值
    简单html弹窗
    js中页面跳转(href)中文参数传输方式
  • 原文地址:https://www.cnblogs.com/ranjiewen/p/8992536.html
Copyright © 2011-2022 走看看