-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTraverseBT.c
41 lines (40 loc) · 979 Bytes
/
TraverseBT.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include<stdio.h>
#include<stdlib.h>
//Binary Code Node
struct Node{
int data;
struct Node *left;
struct Node *right;
};
//function to create a new Node
struct Node* createNode(int value){
struct Node *newNode=(struct Node*)malloc (sizeof(struct Node));
newNode->data=value;
newNode->left=NULL;
newNode->right=NULL;
return newNode;
}
//traversal Inorder
void InorderTraversal(struct Node* root){
if(root!=NULL){
InorderTraversal(root->left);
printf("%d",root->data);
InorderTraversal(root->right);
}
}
//preorder Traversal
void PreorderTraversal(struct Node* root){
if(root!=NULL){
printf("%d",root->data);
PreorderTraversal(root->left);
PreorderTraversal(root->right);
}
}
//postorder Traversal
void PostOrderTraversal(struct Node* root){
if(root!=NULL){
PostOrderTraversal(root->left);
PostOrderTraversal(root->right);
printf("%d",root->data);
}
}