Q. Write A Program To Perform The Operations of Insertion and Deletion On The Heap. Code
Q. Write A Program To Perform The Operations of Insertion and Deletion On The Heap. Code
Code:
#include <stdio.h>
*a = *b;
*b = temp;
int largest = i;
int left = 2 * i + 1;
int right = 2 * i + 2;
largest = left;
largest = right;
if (largest != i) {
swap(&arr[i], &arr[largest]);
maxHeapify(arr, n, largest);
if (*n == 0) {
arr[0] = value;
(*n)++;
return;
}
arr[*n] = value;
int i = *n;
(*n)++;
i = (i - 1) / 2;
if (*n == 0) {
printf("Heap is empty.\n");
return;
if (*n == 1) {
(*n)--;
return;
(*n)--;
if (n == 0) {
printf("Heap is empty.\n");
return;
printf("\n");
int main() {
int arr[100], n = 0;
while (1) {
printf("1. Insert\n");
printf("3. Display\n");
printf("4. Exit\n");
scanf("%d", &choice);
switch (choice) {
case 1:
scanf("%d", &value);
break;
case 2:
deleteMax(arr, &n);
break;
case 3:
display(arr, n);
break;
case 4:
return 0;
default:
return 0;
}
Output:
Insertion:
Display:
Deletion:
Q.1) a) Write a menu driven program to compute the factorial and display a
Fibonacci series for the number entered by the user. (Use recursion for both of
them)
Code:
#include <stdio.h>
if (n == 0 || n == 1)
return 1;
else
if (n <= 1)
return n;
else
int main() {
while (1) {
printf("Menu:\n");
printf("3. Exit\n");
scanf("%d", &choice);
switch (choice) {
case 1:
scanf("%d", &num);
case 2:
scanf("%d", &num);
printf("Fibonacci Series:\n");
printf("\n");
break;
case 3:
printf("Exiting...\n");
return 0;
default:
return 0;
Output:
Factorial Option: Fibonacci Series Option:
Exit:
b) Write a program to solve a Tower of Hanoi problem.
Code:
#include <stdio.h>
if (n == 1) {
return;
int main() {
int numDisks;
scanf("%d", &numDisks);
return 0;
}
Output:
Number of disks=2
Number of disks=4
Number of disks=3