Exp 09 Ds
Exp 09 Ds
h>
#include <stdlib.h>
struct Node {
int data;
};
if (root == NULL)
return 0;
if (root->data == ele) {
return 1;
if (root != NULL) {
inorder(root->left);
inorder(root->right);
ptr->data = data;
ptr->left = NULL;
ptr->right = NULL;
if (root == NULL) {
root = ptr;
} else {
parentptr = NULL;
nodeptr = root;
parentptr = nodeptr;
nodeptr = nodeptr->left;
} else {
nodeptr = nodeptr->right;
parentptr->left = ptr;
} else {
parentptr->right = ptr;
root = root->left;
return root;
}
struct Node* delete(struct Node *root, int data) {
if (root == NULL) {
return root;
} else {
free(root);
root = NULL;
root = root->right;
free(temp);
root = root->left;
free(temp);
} else {
root->data = temp->data;
return root;
int main() {
while (1) {
printf("\nMenu:\n");
printf("1. Insert\n");
printf("2. Delete\n");
printf("4. Search\n");
printf("5. Exit\n");
scanf("%d", &choice);
switch (choice) {
case 1:
scanf("%d", &value);
insert(value);
break;
case 2:
scanf("%d", &value);
break;
case 3:
inorder(root);
printf("\n");
break;
case 4:
scanf("%d", &value);
if (search(root, value)) {
} else {
break;
case 5:
exit(0);
default:
return 0;
Output:-
Menu:
1. Insert
2. Delete
3. In-order Traversal
4. Search
5. Exit
Menu:
1. Insert
2. Delete
3. In-order Traversal
4. Search
5. Exit
Menu:
1. Insert
2. Delete
3. In-order Traversal
4. Search
5. Exit
Menu:
1. Insert
2. Delete
3. In-order Traversal
4. Search
5. Exit
In-order Traversal: 10 22 55
Menu:
1. Insert
2. Delete
3. In-order Traversal
4. Search
5. Exit
Menu:
1. Insert
2. Delete
3. In-order Traversal
4. Search
5. Exit
In-order Traversal: 10 55