Users Online

· Guests Online: 42

· Members Online: 0

· Total Members: 188
· Newest Member: meenachowdary055

Forum Threads

Newest Threads
No Threads created
Hottest Threads
No Threads created

Latest Articles

C Program to Find the Largest value in a Tree using Inorder Traversal

Here is source code of the C Program to Find the Largest value in a Tree using Inorder Traversal. The C program is successfully compiled and run on a Linux system. The program output is also shown below.

/*
* C Program to Find the Largest value in a Tree using
* Inorder Traversal
* 40
* /\
* 20 60
* /\ \
* 10 30 80
* \
* 90
*/

#include <stdio.h>
#include <stdlib.h>

struct btnode
{
int value;
struct btnode *left, *right;
};
typedef struct btnode node;

/* function prototypes */

void insert(node *, node *);
void inorder(node *);
void largest(node *);

void main()
{
node *root = NULL, *new = NULL ;
int num = 1;

printf("Enter the elements of the tree(enter 0 to exit)\n");
while (1)
{
scanf("%d", &num);
if (num == 0)
break;
new = malloc(sizeof(node));
new->left = new->right = NULL;
new->value = num;
if (root == NULL)
root = new;
else
{
insert(new, root);
}
}
printf("elements in a tree in inorder are\n");
inorder(root);
largest(root);
}

/* displaying nodes of a tree using inorder */

void inorder(node *root)
{
if (root != NULL)
{
inorder(root->left);
printf("%d -> ", root->value);
inorder(root->right);
}
}

/* inserting nodes into the tree */

void insert(node * new , node *root)
{
if (new->value > root->value)
{
if (root->right == NULL)
root->right = new;
else
insert (new, root->right);
}
if (new->value < root->value)
{
if (root->left == NULL)
root->left = new;
else
insert(new, root->left);
}
}

/* finding largest node in a tree */
void largest(node *root)
{
if (root->right == NULL)
{
printf("largest element is %d", root->value);
}
while (root != NULL && root->right != NULL)
{
root = root->right;
}
printf("\nlargest value is %d\n", root->value);
}


$ cc tree4.c
$ a.out
Enter the elements of the tree(enter 0 to exit)
40
20
60
10
30
80
90
0
elements in a tree in inorder are
10 -> 20 -> 30 -> 40 -> 60 -> 80 -> 90
largest value is 90

Comments

No Comments have been Posted.

Post Comment

Please Login to Post a Comment.

Ratings

Rating is available to Members only.

Please login or register to vote.

No Ratings have been Posted.
Render time: 0.83 seconds
10,273,041 unique visits