在這段代碼中,我需要創建一個函數來計算我的BST中的偶數。我不知道如何通過我的樹的所有節點。下面是代碼:在BST中求和的偶數
#include <stdio.h>
#include <stdlib.h>
struct node
{
int key;
struct node *left, *right;
};
struct node *newNode(int item) {
struct node *temp=(struct node *)malloc(sizeof(struct node));
temp->key = item;
temp->left = temp->right = NULL;
return temp;
}
struct node* insert(struct node* node, int key) {
if (node == NULL) return newNode(key);
if (key < node->key)
node->left = insert(node->left, key);
else
node->right = insert(node->right, key);
return node;
}
void main(void)
{
struct node *root = NULL;
int data[]={3,1,2,6,4,7,8}, n, i;
n=sizeof(data)/sizeof(data[0]);
for(i=0;i<n;i++)
root=insert(root,data[i]);
}
編寫遍歷樹中所有元素的遞歸函數。它檢查每個元素以查看它是否均勻,然後將其添加到保存總和的變量中。 – Barmar