donmike25 icon

inlab2

donmike25 | PRO | 12/16/13 02:20:56 PM UTC | 0 ⭐ | 238 👁️ | Never ⏰ | []
C |

1.81 KB

|

None

|

0 👍

/

0 👎

#include <stdio.h>
#include <stdlib.h>
 
typedef struct tNode
{
    int data;
    struct tNode *left;
    struct tNode *right;
}tnode;
 
 
tnode *initNode(int);
void tGrow();
void task(tnode*);
tnode *root;
 
void tGrow(){
 
 
    root = initNode(0);
    root->left = initNode(1);
    root->right = initNode(2);
    root->left->left = initNode(3);
    root->left->right = initNode(4);
    root->left->left->left = initNode(5);
    root->left->left->right = initNode(6);
    root->left->right->left = initNode(7);
    root->left->right->right = initNode(8);
    root->right->left = initNode(9);
    root->right->right = initNode(10);
    root->right->left->left = initNode(11);
    root->right->left->right = initNode(12);
    root->right->right->left = initNode(13);
    root->right->right->right = initNode(14);
 
 
 
}
tnode *initNode(int data){
    tnode *temp;
    temp = (tnode *)malloc(sizeof(tnode));
    temp->data = data;
    temp->right = NULL;
    temp->left = NULL;
    return temp;
 
}
 
 
void inorder(tnode*);
void postorder(tnode*);
void preorder(tnode*);
 
 
 
void preorder(tnode *node){
 
 
    if (node)
    {
        if (node->data == 2)
            printf("hello\t");
        else
        {
 
            printf("%d\t", node->data);
        }
        preorder(node->left);
        preorder(node->right);
 
    }
 
 
}
 
 
 
void postorder(tnode *node){
 
 
    if (node)
    {
        postorder(node->left);
        postorder(node->right);
        if (node->data == 2)
            printf("hello\t");
        else
        {
 
            printf("%d\t", node->data);
        }
    }
 
 
}
 
void inorder(tnode *node){
 
 
    if (node)
    {
        inorder(node->left);
        if (node->data == 2)
            printf("hello\t");
        else
        {
 
            printf("%d\t", node->data);
        }
        
        inorder(node->right);
 
    }
 
 
 
 
 
}
void task(tnode* total){
    printf("Inorder traversal: ");
    inorder(total);
 
}
 
 
int main()
{
 
 
 
    
 
 
        tGrow();
        task(root);
 
 
 
        
 
}

Comments