Aşağıda gösterilen ikili ağaç göz önüne alındığında, aşağıda gösterilen ikili ağacın düğümleri fonksiyonu A (kök) çağrılır varsayılarak ziyaret sırayı belirler. Gösterildiği gibi ağaç düğümleri ve işaretçileri tanımlanır varsayın. Kök 60. içeren düğümünü işaret olduğunu varsayalım bu soruna cevabım aşağıda verilmiştir. Doğru mu? Neyi yanlış yaptım?
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);
}
}
Cevap: O kadar 60 yazdırıldığından ilk baskı node_ptr-> verilere diyor hükümsüz A'da Sonra fonksiyonu A çağrılır, daha sonra B dahilinde (sol node_ptr->) B çağırır (node_ptr-> sol) daha sonra yazdırmak olduğunu 5'tir veri . sonra (node_ptr-> sağ) çağrılan bir geri verileri sayesinde 8 baskılı alır A, baskı kadar gidin. Şimdi Im çok emin değilim ne yapması gerektiğini ama mantıken bu anlamda yazdırmak kılacak olsun 30 ama ptr 8'den 30'a Ve aynı desen 38 devam ederse o zaman basılmış alır ve 32 baskılı alır alır Im değil emin nasıl. Sağ alt ağaç için ... 90 77 62 88













