Aangezien de binaire boom hieronder weergegeven, bepalen de volgorde waarin de knooppunten van de binaire boom onderstaande bezocht veronderstelling dat de functie A (root) aangeroepen. Neem aan dat de boom knooppunten en pointers worden gedefinieerd als getoond. Neem aan dat wortel is een pointer naar het knooppunt met 60. Mijn antwoord op dit probleem wordt hieronder gegeven. Klopt het? Wat heb ik verkeerd gedaan?
60
/ \
30 90
/ \ /
5 38 77
\ / / \
8 32 62 88
struct treeNode{
int data;
struct treeNode *left, *right:
{
struct treeNode *tree_ptr;
void A(struct treeNode *node_ptr){
if (node_ptr != NULL){
printf(“%d ,”,node_ptr->data);
B(node_ptr->left);
B(node_ptr->right);
}
}
void B(struct treeNode *node_ptr){
if (node_ptr != NULL) {
A(node_ptr->left);
printf(“%d ,”,node_ptr->data);
A(node_ptr->right);
}
}
Antwoord: In leegte A zegt tot eerste afdruk node_ptr-> gegevens, zodat 60 wordt afgedrukt Dan roept de functie B (node_ptr-> links) vervolgens binnen B, A wordt aangeroepen (node_ptr-> links) dan print u die gegevens dat is 5 . En dan A (node_ptr-> rechts) wordt aangeroepen gaan terug naar A, af te drukken dat de gegevens zo 8 wordt afgedrukt. Nu Im niet zo zeker wat te doen, maar ik krijg logisch zou het zinvol zijn om af te drukken 30 maar ik ben niet zeker hoe de ptr krijgt van 8 tot 30. En als je verder in het zelfde patroon 38 wordt gedrukt en 32 wordt afgedrukt. Voor de rechter deelboom ... 90 77 62 88













