DS lab File
DS lab File
Ghaziabad UP
LAB FILE
BTECH 2nd YEAR
TRAVERSING 1D ARRAY
#include <stdio.h>
int main()
{
/* PROGRAM TO TRAVERSE A ID ARRAY*/
printf("\n");
int i,n;
printf("ENTER NUMBER OF ELEMENTS YOU WANT TO INSERT :");
scanf("%d",&n);
int A[n];
printf("START ENTERING ELEMENTS IN ARRAY :");
for(i=0;i<n;i++)
{
scanf("%d",&A[i]);
}
printf("ARRAY IS \n");
for(i=0;i<n;i++)
{
printf("%d \t",A[i]);
}
return 0;
}
OUTPUT:
PROGRAM 2
TRAVERSING OF 2D ARRAY
#include <stdio.h>
int main()
{
int i,j,m,n;
printf("ENTER NUMBER OF ROWS IN ARRAY :");
scanf("%d",&m);
printf("ENTER NUMBER OF COLUMNS IN ARRAY :");
scanf("%d",&n);
int arr[m][n];
printf("\n");
printf("START ENTERING ELEMENTS IN ARRAY \n");
for(i=0;i<m;i++)
{
printf("\n");
for(j=0;j<n;j++)
{
scanf("%d",&arr[i][j]);
}
}
printf("2D ARRAY IS \n");
for(i=0;i<m;i++)
{
printf("\n");
for(j=0;j<n;j++)
{
printf("%d \t",arr[i][j]);
}
}
return 0;
}
OUTPUT:
PROGRAM 3
INSERTION OF ELEMENT IN ARRAY
#include <stdio.h>
int main()
{
/* PROGRAM TO INSERT ELEMENT IN ARRAY*/
int i,n,ele,pos;
printf("ENTER NUMBER OF ELEMENTS YOU WANT IN ARRAY : ");
scanf("%d",&n);
int arr[n];
printf("START ENTERING ELEMENTS IN ARRAY \n");
for(i=1;i<=n;i++)
{
scanf("%d",&arr[i]);
}
printf("ARRAY BEFORE INSERTION IS \n");
for(i=1;i<=n;i++)
{
printf("%d ",arr[i]);
}
printf("\n");
printf("ENTER ELEMENT YOU WANT TO INSERT IN ARRAY :");
scanf("%d",&ele);
printf("\n");
printf("ENTER POSITION YOU WANT TO INSERT THE ELEMENT :");
scanf("%d",&pos);
for(i=n;i>=pos;i--)
{
arr[i+1]=arr[i];
if (i==pos)
{
arr[i]=ele;
}
}
printf("ARRAY AFTER INSERTION IS \n");
for(i=0;i<n+1;i++)
{
printf("%d ",arr[i]);
}
return 0;
}
OUTPUT:
PROGRAM 4
DELETION OF ELEMENT FROM AN ARRAY
#include <stdio.h>
int main()
{
int i,n,pos;
printf("ENTER NUMBER OF ELEMENTS IN ARRAY :");
scanf("%d",&n);
int arr[n];
printf("START ENTERING ELEMENTS IN ARRAY \n");
for(i=0;i<n;i++)
{
scanf("%d",&arr[i]);
}
printf("ARRAY BEFORE DELETION IS \n ");
for(i=0;i<n;i++)
{
printf("%d \t",arr[i]);
}
printf("\n");
printf("ENTER POSITION FROM WHERE YOU WANT TO DELETE THE ELEMENT :");
scanf("%d",&pos);
if(pos>n)
{
printf("DELETION IS NOT POSSIBLE");
}
else
{
for(i=pos;i<n;i++)
{
arr[i]=arr[i+1];
}
}
printf("ARRAY AFTER DELETION IS \n");
for(i=0;i<n-1;i++)
{
printf("%d \t",arr[i]);
}
return 0;
}
OUTPUT:
PROGRAM 5
MERGING OF TWO ARRAY
#include<stdio.h>
#include<conio.h>
int main()
{
int arr1[50], arr2[50], size1, size2, i, k, merge[100];
printf("Enter Array 1 Size: ");
scanf("%d", &size1);
printf("Enter Array 1 Elements: ");
for(i=0; i<size1; i++)
{
scanf("%d", &arr1[i]);
merge[i] = arr1[i];
}
k = i;
printf("\nEnter Array 2 Size: ");
scanf("%d", &size2);
printf("Enter Array 2 Elements: ");
for(i=0; i<size2; i++)
{
scanf("%d", &arr2[i]);
merge[k] = arr2[i];
k++;
}
printf("\nThe new array after merging is:\n");
for(i=0; i<k; i++)
printf("%d ", merge[i]);
getch();
return 0;
}
OUTPUT:
PROGRAM 6
STACK USING ARRAY
#include <stdio.h>
int stack[100],choice,n,top,x,i;
void push(void);
void pop(void);
void display(void);
int main()
{
top=-1;
printf("Enter the size of stack[max=100]:");
scanf("%d",&n);
printf("\n\t STACK OPERATION USING ARRAY");
printf("\n\t............................");
printf("\n\t1.PUSH\n\t 2.POP\n\t 3. DISPLAY\n\t 4.EXIT");
do
{
printf("\n Enter the choice");
scanf("%d",&choice);
switch(choice)
{
case 1:
{
push();
break;
}
case 2:
{
pop();
break;
}
case 3:
{
display();
break;
}
case 4:
{
printf("\n\t EXIT POINT ");
break;
}
default:
{
printf("\n\t Please enter a valid choice");
}
}
}
while(choice!=4);
return 0;
}
void push()
{
if(top>=n-1)
{
printf("\n\t Stack is overflow");
}
else
{
printf("Enter a value to be pushed");
scanf("%d",&x);
top++;
stack[top]=x;
}
}
void pop()
{
if(top<=-1)
{
printf("\n\t Stack is under flow");
}
else
{
printf("\n\t the popped elementis %d",stack[top]);
top--;
}
}
void display()
{
if(top>=0)
{
printf("\n the element in STACK \n");
for(i=top;i>=0;i--)
printf("\n%d",stack[i]);
printf("\n Press next choice");
}
else
{
printf("\n The STACK is empty");
}
}
OUTPUT:
Program-7
QUEUE USING C
#include <stdio.h>
# define SIZE 100
void enqueue();
void dequeue();
void show();
int inp_arr[SIZE];
int Rear = - 1;
int Front = - 1;
main()
{
int ch;
while (1)
{
printf("1.Enqueue Operation\n");
printf("2.Dequeue Operation\n");
printf("3.Display the Queue\n");
printf("4.Exit\n");
printf("Enter your choice of operations : ");
scanf("%d", &ch);
switch (ch)
{
case 1:
enqueue();
break;
case 2:
dequeue();
break;
case 3:
show();
break;
case 4:
exit(0);
default:
printf("Incorrect choice \n");
}
}
}
void enqueue()
{
int insert_item;
if (Rear == SIZE - 1)
printf("Overflow \n");
else
{
if (Front == - 1)
Front = 0;
printf("Element to be inserted in the Queue\n : ");
scanf("%d", &insert_item);
Rear = Rear + 1;
inp_arr[Rear] = insert_item;
}
}
void dequeue()
{
if (Front == - 1 || Front > Rear)
{
printf("Underflow \n");
return ;
}
else
{
printf("Element deleted from the Queue: %d\n", inp_arr[Front]);
Front = Front + 1;
}
}
void show()
{
if (Front == - 1)
printf("Empty Queue \n");
else
{
printf("Queue: \n");
for (int i = Front; i <= Rear; i++)
printf("%d ", inp_arr[i]);
printf("\n");
}
}
OUTPUT:
PROGRAM- 8
BUBBLE SORT
#include <stdio.h>
int main(){
printf("Please Enter the Number of Elements you want in the array: ");
scanf("%d", &num);
scanf("%d", &arr[x]);
temp = arr[y];
arr[y + 1] = temp;
return 0;
}
OUTPUT:
PROGRAM 9
SELECTION SORT
#include <stdio.h>
int main()
scanf("%d", &n);
scanf("%d", &array[c]);
position = c;
position = d;
if (position != c)
t = array[c];
array[c] = array[position];
array[position] = t;
printf("%d\n", array[c]);
return 0;
}
OUTPUT:
PROGRAM 10
INSERTION SORT
#include <stdio.h>
int main(void)
int n, i, j, temp;
int arr[64];
scanf("%d", &n);
scanf("%d", &arr[i]);
j = i;
temp = arr[j];
j--;
printf("%d\n", arr[i]);
return 0;
}
OUTPUT:
PROGRAM 11
QUICK SORT
#include <stdio.h>
#include <stdlib.h>
while (i <= j)
i++;
j--;
if (i <= j)
arr[i] = arr[j];
arr[j] = temp;
i++;
j--;
}
}
if (low < j)
if (i < high)
quickSort(arr, i, high);
return 0;
int main(void)
int n;
scanf("%d", &n);
int arr[n];
scanf("%d", &arr[i]);
int low = 0;
int high = n - 1;
int k = low - 1;
for (int j = low; j < high; j++)
k++;
arr[k] = arr[j];
arr[j] = temp;
arr[k + 1] = arr[high];
arr[high] = temp;
int pi = k + 1;
quickSort(arr, pi + 1, high);
return 0;
}
OUTPUT:
PROGRAM 12
MERGE SORT
#include <stdio.h>
#include <stdlib.h>
int i, j, k;
i = 0;
j = 0;
k = left;
{
if (Left[i] <= Right[j])
arr[k] = Left[i];
i++;
else
arr[k] = Right[j];
j++;
k++;
arr[k] = Left[i];
i++;
k++;
arr[k] = Right[j];
j++;
k++;
}
int main()
int size;
scanf("%d", &size);
int arr[size];
scanf("%d", &arr[i]);
}
Merge_Sort(arr, 0, size - 1);
printf("\n");
return 0;
}
OUTPUT:
PROGRAM 13
LINEAR SEARCH
#include <stdio.h>
int main()
int array[100],search,c,n;
scanf("%d",&n);
for(c=0;c<n;c++)
scanf("%d",&array[c]);
scanf("%d",&search);
for(c=0;c<n;c++)
if(array[c]==search) {
break;
if(c==n)
return 0;
}
OUTPUT:
PROGRAM 14
BINARY SEARCH
#include <stdio.h>
int main()
scanf("%d",&n);
scanf("%d",&array[i]);
scanf("%d", &key);
low = 0;
high = n - 1;
mid = (low+high)/2;
low = mid + 1;
break;
}
else
high = mid - 1;
return 0;
}
OUTPUT:
PROGRAM 15
TOWER OF HANOI
#include <stdio.h>
int main()
int num;
scanf("%d", &num);
return 0;
if (num == 1)
return;
printf("\n Move disk %d from peg %c to peg %c", num, frompeg, topeg);
}
OUTPUT:
PROGRAM 16
#include<stdio.h>
# define MAX 5
int cqueue_arr[MAX];
return;
if(front == -1)
front = 0;
rear = 0;
else
if(rear == MAX-1)
rear = 0;
else
rear = rear+1;
cqueue_arr[rear] = item ;
void deletion()
if(front == -1)
printf("Queue Underflown");
return ;
if(front == rear)
front = -1;
rear=-1;
else
if(front == MAX-1)
front = 0;
else
front = front+1;
}
void display()
if(front == -1)
printf("Queue is empty\n");
return;
printf("%d ",cqueue_arr[front_pos]);
front_pos++;
else
printf("%d ",cqueue_arr[front_pos]);
front_pos++;
front_pos = 0;
{
printf("%d ",cqueue_arr[front_pos]);
front_pos++;
printf("\n");
int main()
int choice,item;
do
printf("1.Insert\n");
printf("2.Delete\n");
printf("3.Display\n");
printf("4.Quit\n");
scanf("%d",&choice);
switch(choice)
case 1 :
scanf("%d", &item);
insert(item);
break;
case 2 :
deletion();
break;
case 3:
display();
break;
case 4:
break;
default:
printf("Wrong choicen");
}while(choice!=4);
return 0;
}
OUTPUT: