C言語(!C++)で反復的および再帰的にツリーデータ構造を構築する良い例はありますか? また、ツリーをトラバースしてすべてのノードをカバーする..
私はこの構造体を使用する可能性があります:
typedef struct treeNode *treeLink;
struct treeNode {
Item item;
treeLink left, right;
};
C言語(!C++)で反復的および再帰的にツリーデータ構造を構築する良い例はありますか? また、ツリーをトラバースしてすべてのノードをカバーする..
私はこの構造体を使用する可能性があります:
typedef struct treeNode *treeLink;
struct treeNode {
Item item;
treeLink left, right;
};
treeLink Traverse_In_Order(treeLink current){
if(curernt == NULL) return NULL;
Traverse(current->left);
operation(current->item);
Traverse(current->right);
return current; // in case you want to do something on this node
}
treeLink Traverse_Pre_Order(treeLink current){
if(curernt == NULL) return NULL;
operation(current->item);
Traverse(current->left);
Traverse(current->right);
return current; // in case you want to do something on this node
}
treeLink Traverse_Pos_Order(treeLink current){
if(curernt == NULL) return NULL;
Traverse(current->left);
Traverse(current->right);
operation(current->item);
return current; // in case you want to do something on this node
}