ryantata
ryantata

Reputation: 137

How to make a Traversable Tree Data Structure in C

Does anyone have any good examples of building a tree data structure both iteratively and recursively in C Language (!C++)? Also to traverse through the tree and cover every node..

I'm likely to use this struct:

typedef struct treeNode *treeLink;
struct treeNode {
    Item item;
    treeLink left, right;
};

Upvotes: 0

Views: 734

Answers (1)

Jing
Jing

Reputation: 945

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
}

Upvotes: 1

Related Questions