ARRAY OPERATIONS Codes
ARRAY OPERATIONS Codes
1. INSERTION
#include<stdio.h>
int main(){
int size=0;
printf("ENTER THE SIZE OF ARRAY:\n");
scanf("%d",&size);
int arr[size];
//array insertion
for(int i=0;i<size;i++){
printf("Enter the element no %d:\n",i+1);
scanf("%d",&arr[i]);
}
//array traversl
printf("The elements present in the array are:\n");
for(int i=0;i<size;i++){
printf("%d ",arr[i]);
}
2. DELETION
#include<stdio.h>
int main(){
int size=0;
printf("ENTER THE SIZE OF ARRAY:\n");
scanf("%d",&size);
int arr[size];
for(int i=0;i<size;i++){
printf("Enter the element no %d:\n",i+1);
scanf("%d",&arr[i]);
}
int pos=0;
printf("Enter the index position whose value is to be deleted:\n");
scanf("%d",&pos);
for(int i=pos;i<size;i++){
arr[i]=arr[i+1];
}
printf("The elements present in the array after deletion are:\n");
for(int i=0;i<size-1;i++){
printf("%d ",arr[i]);
}
3. STRING REVERSAL
#include<stdio.h>
int main(){
char str[100];
int i=0,count=0;
char str2[100];
printf("Enter the string:\n");
scanf("%s",str);
while(str[i]!='\0'){
count++;
i++;
}
int j=0;
for(int i=count-1;i>=0;i--){
str2[j]=str[i];
j++;
}
printf("%s",str2);
4. LENGTH OF A STRING
#include<stdio.h>
int main(){
char str[100];
int i=0,count=0;
printf("Enter the string:\n");
scanf("%s",str);
while(str[i]!='\0'){
count++;
i++;
}
printf("Total Length of String: %d",count);
}
5. BINARY SEARCH
#include<stdio.h>
int main(){
int arr[]={1,2,3,4,5};
int element=5;
int start=0;
int count=0;
int stop=sizeof(arr)/sizeof(int);
while(1){
int mid=start+(stop-start)/2;
if(arr[mid]==element){
printf("%d",mid);
break;
}
else if(arr[mid]>element){
stop=mid-1;
}
else if(arr[mid]<element){
start=mid+1;
}
count++;
if(count>stop){
printf("ELEMENT NOT PRESENT IN THE ARRAY");
break;
}
}
}
6. INTERPOLATION SEARCH
#include <stdio.h>
int main()
{
int arr[] = { 10, 12, 13, 16, 18, 19, 20, 21,
22, 23, 24, 33, 35, 42, 47 };
int n = sizeof(arr) / sizeof(arr[0]);
int x = 23;
int start=0;
int stop=n-1;
int pos;
int count=0;
while(1){
if (start <= stop && x >= arr[start] && x <= arr[stop]) {
pos=start + ((x-arr[start])*((double)(stop-start))/(arr[stop]-arr[start]));
if(arr[pos]==x){
printf("The element is present in index: %d",pos);
break;
}
if(arr[pos]<x){
start=pos+1;
}
if(arr[pos]>x){
stop=pos-1;
}
}
}
}
7. LINEAR SEARCH
#include<stdio.h>
int main(){
int size=0;
printf("ENTER THE SIZE OF ARRAY:\n");
scanf("%d",&size);
int arr[size];
for(int i=0;i<size;i++){
printf("Enter the element no %d:\n",i+1);
scanf("%d",&arr[i]);
}
int element=5;
int found=0;
for(int i=0;i<size;i++){
if(element==arr[i]){
printf("The element is present in position: %d",i);
found=1;
break;
}
}
if (found==0){
printf("ELEMENT NOT FOUND");
}
}
8. BUBBLE SORT
#include<stdio.h>
int main(){
int arr[]={10,77,1,5,100,20,6,99};
int size=sizeof(arr)/sizeof(int);
int temp;
for(int i=0;i<size-1;i++){
for(int j=0;j<size-i-1;j++){
if(arr[j] > arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for(int i=0;i<size;i++){
printf("%d\n",arr[i]);
}
}
9. INSERTION SORT
#include <stdio.h>
int main() {
int arr[]={5,1,10,4,3,2,45,33,27};
int temp,j;
int size=sizeof(arr)/sizeof(int);
int count=0;
for(int i=1;i<size;i++){
temp = arr[i];
j = i - 1;
for(j=j;j>=0&&arr[j]>temp;j--){
arr[j+1]=arr[j];
}
arr[j + 1] = temp;
}
for(int i=0;i<size;i++){
printf("%d ",arr[i]);
}
}
#include<stdio.h>
void quicksort(int arr[25],int start,int stop){
int i, j, pivot, temp;
if(start<stop){
pivot=start;
i=start;
j=stop;
while(i<j){
while(arr[i]<=arr[pivot]&&i<stop)
i++;
while(arr[j]>arr[pivot])
j--;
if(i<j){
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
temp=arr[pivot];
arr[pivot]=arr[j];
arr[j]=temp;
quicksort(arr,start,j-1);
quicksort(arr,j+1,stop);
}
}
int main(){
int i;
int arr[]={5,6,4,2,9,1,8,7};
int size=sizeof(arr)/sizeof(int);
int start=0, stop =size-1;
quicksort(arr,start,stop);
for(i=0;i<size;i++)
printf(" %d",arr[i]);
}
11. SELECTION SORT
#include <stdio.h>
int main() {
int arr[]={5,1,10,4,3,22,21,18};
int temp,min_idx;
int size=sizeof(arr)/sizeof(int);
for(int i=0;i<size-1;i++)
{
min_idx = i;
for(int j=i+1;j<size;j++){
if(arr[j] < arr[min_idx]){
min_idx = j;
}
}
temp=arr[min_idx];
arr[min_idx]=arr[i];
arr[i]=temp;
}
for(int i=0;i<size;i++){
printf("%d ",arr[i]);
}
}
#include <stdio.h>
int main() {
int arr[] = {10,9,6,4,1,7,5};
int size = sizeof(arr) / sizeof(int);
int i,j,temp,gap;
for(gap=size/2; gap>0; gap=gap/2) {
for(i=gap; i<size; i++) {
temp=arr[i];
for (j=i; j>=gap && arr[j-gap]>temp; j=j-gap) {
arr[j]=arr[j-gap];
}
arr[j] = temp;
}
}
printf("Sorted arr: \n");
for (int i = 0; i < size;i++) {
printf("%d ", arr[i]);
}
}