溫馨提示×

C++二叉樹遍歷的方法是什么

c++
小億
95
2024-03-15 16:41:59
欄目: 編程語言

C++中常用的二叉樹遍歷方法有三種:前序遍歷、中序遍歷和后序遍歷。

  1. 前序遍歷(Preorder Traversal):先訪問根節點,然后遞歸地前序遍歷左子樹和右子樹。
void preorderTraversal(TreeNode* root) {
    if (root) {
        cout << root->val << " ";
        preorderTraversal(root->left);
        preorderTraversal(root->right);
    }
}
  1. 中序遍歷(Inorder Traversal):先遞歸地中序遍歷左子樹,然后訪問根節點,最后遞歸地中序遍歷右子樹。
void inorderTraversal(TreeNode* root) {
    if (root) {
        inorderTraversal(root->left);
        cout << root->val << " ";
        inorderTraversal(root->right);
    }
}
  1. 后序遍歷(Postorder Traversal):先遞歸地后序遍歷左子樹和右子樹,最后訪問根節點。
void postorderTraversal(TreeNode* root) {
    if (root) {
        postorderTraversal(root->left);
        postorderTraversal(root->right);
        cout << root->val << " ";
    }
}

以上均是遞歸實現的方式,也可以使用迭代的方式來進行二叉樹的遍歷。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女