0 Pluspunkte 0 Minuspunkte
Welche Arten von Traversierung gibt es für einen Binary Tree?
bezieht sich auf eine Antwort auf: Binary Tree in C
von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Die drei grundlegenden Traversierungsarten sind In-Order, Pre-Order und Post-Order

Inorder-Traversierung: Hierbei werden die Knoten in der Reihenfolge "links, Wurzel, rechts" durchlaufen. In einem Binärbaum mit aufsteigend sortierten Werten werden die Knoten in aufsteigender Reihenfolge ausgegeben.

void inorderTraversal(struct TreeNode* root) {
    if (root != NULL) {
        inorderTraversal(root->left);
        printf("%d ", root->data);
        inorderTraversal(root->right);
    }
}

Preorder-Traversierung: Hierbei werden die Knoten in der Reihenfolge "Wurzel, links, rechts" durchlaufen. Das bedeutet, dass der Wurzelknoten zuerst besucht wird, gefolgt von seinen linken und rechten Kindknoten.

void preorderTraversal(struct TreeNode* root) {
    if (root != NULL) {
        printf("%d ", root->data);
        preorderTraversal(root->left);
        preorderTraversal(root->right);
    }
}

Postorder-Traversierung: Hierbei werden die Knoten in der Reihenfolge "links, rechts, Wurzel" durchlaufen. Das bedeutet, dass die linken und rechten Kindknoten zuerst besucht werden und dann der Wurzelknoten.

void postorderTraversal(struct TreeNode* root) {
    if (root != NULL) {
        postorderTraversal(root->left);
        postorderTraversal(root->right);
        printf("%d ", root->data);
    }
}

von