二叉树的先序,中序,后序遍历例题
    二叉树的先序遍历、中序遍历和后序遍历是三种常见的遍历方式。以下是相应的例题:
    1. 先序遍历
    以下是一个简单的二叉树,请实现先序遍历:
    ```
    3
    /
    1    5
    /
    2  4    6
    ```
    先序遍历的结果应该是:3,1,2,4,5,6。
    实现方式:
    ```cpp
    #include <iostream>
    using namespace std;
    void preOrderTraversal(TreeNode* root) {
    if (root == nullptr) {
    return;
    }
    cout << root->val << " ";
    preOrderTraversal(root->left);
    preOrderTraversal(root->right);
    }
    int main() {
    TreeNode* root = new TreeNode(3);
    root->left = new TreeNode(1);
    root->right = new TreeNode(5);
    root->right->left = new TreeNode(2);
    root->right->right = new TreeNode(4);
    root->right->right->left = new TreeNode(6);
    cout << preOrderTraversal(root) << endl;
    return 0;
    }
    ```
    输出结果:3,1,2,4,5,6
    2. 中序遍历
    以下是一个简单的二叉树,请实现中序遍历:
    ```
    1
    /
    4    2
    /
    5  3    6
    ```
    中序遍历的结果应该是:1,4,2,5,3,6。
    实现方式:
    ```cpp
    #include <iostream>
    using namespace std;
    void inOrderTraversal(TreeNode* root) {
    if (root == nullptr) {
    return;
    }
    inOrderTraversal(root->left);
    cout << root->val << " ";
    inOrderTraversal(root->right);
    }
    int main() {
    TreeNode* root = new TreeNode(1);
    root->left = new TreeNode(4);
    root->right = new TreeNode(2);
    root->right->left = new TreeNode(5);
    root->right->right = new TreeNode(3);
先序中序后序遍历二叉树    root->right->right->left = new TreeNode(6);
    cout << inOrderTraversal(root) << endl;
    return 0;
    }
    ```
    输出结果:1,4,2,5,3,6
    3. 后序遍历
    以下是一个简单的二叉树,请实现后序遍历:
    ```
    2
    /
    4    6
    /
    1    3    5
    ```
    后序遍历的结果应该是:2,4,6,1,3,5。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。