Counting total number of nodes in a tree in C | C Program to count Nodes in tree
#include
#include
struct tree_node
{
int data;
struct tree_node *left,*right,*parent;
};
typedef struct tree_node node;
node * new_node(int x);
node * insert_node(node *root, int x);
int count_nodes(node *root);
int main()
{
node *root=NULL;
int i,x,max;
printf("how many numbers do you want to enter in tree?\n");
scanf("%d",&max);
printf("Enter %d numbers \n",max);
for(i=0;idata > x)
root->left = insert_node(root->left,x);
else
root->right = insert_node(root->right,x);
return root;
}
int count_nodes(node *root)
{
if(!root)
return 0;
else
return(count_nodes(root->left) + 1 + count_nodes(root->right));
}
node * new_node(int x)
{
node *furnished;
furnished = (node*)malloc(sizeof(node));
furnished->data=x;
furnished->left=NULL;
furnished->right=NULL;
furnished->parent=NULL;
return furnished;
}
No comments:
Post a Comment