C++ 二叉树的遍历(前序、中序、后序)

    技术2022-07-12  70

    二叉树如此下: 1 2 3 4 5 6 7 前序遍历:(根左右)1245367 代码如下:

    class Solution { public: vector<int>res; void dfs(TreeNode* root){ if(!root) return; res.push_back(root->val); dfs(root->left); dfs(root->right); } vector<int> findMode(TreeNode* root) { dfs(root); return res; } };

    中序遍历:(左根右)4251637 代码如下:

    class Solution { public: vector<int>res; void dfs(TreeNode* root){ if(!root) return; dfs(root->left); res.push_back(root->val); dfs(root->right); } vector<int> findMode(TreeNode* root) { dfs(root); return res; } };

    后序遍历:(左右根)4526731 代码如下:

    class Solution { public: vector<int>res; void dfs(TreeNode* root){ if(!root) return; dfs(root->left); dfs(root->right); res.push_back(root->val); } vector<int> findMode(TreeNode* root) { dfs(root); return res; } };
    Processed: 0.016, SQL: 9