0% found this document useful (0 votes)
4 views

linear

Uploaded by

veera.deva.0110
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

linear

Uploaded by

veera.deva.0110
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

linear

#include <stdio.h>

int linSearch(int arr[], int n, int x) {


if (n == 0)
return -1;

if (arr[n - 1] == x)
return n - 1;

return linSearch(arr, n - 1, x);


}

int main() {
int n, x;
printf("Enter number of elements:
");
scanf("%d", &n);

int arr[n];
printf("Enter %d elements: ", n);
for (int i = 0; i < n; i++)
scanf("%d", &arr[i]);

printf("Enter element to search: ");


scanf("%d", &x);

int res = linSearch(arr, n, x);


if (res != -1)
printf("Found at index %d\n",
res);
else
printf("Not found\n");

return 0;
}
Binary scanf("%d", &n);

#include <stdio.h> int arr[n];


printf("Enter %d elements: ", n);
int binSearch(int arr[], int low, int for (int i = 0; i < n; i++)
high, int x) { scanf("%d", &arr[i]);
if (high >= low) {
int mid = low + (high - low) / 2; // Sort the array for binary search
sort(arr, n);
if (arr[mid] == x)
return mid; printf("Enter element to search: ");
scanf("%d", &x);
if (arr[mid] > x)
return binSearch(arr, low, mid int res = binSearch(arr, 0, n - 1, x);
- 1, x); if (res != -1)
printf("Found at index %d\n",
return binSearch(arr, mid + 1, res);
high, x); else
} printf("Not found\n");

return -1; return 0;


} }

void sort(int arr[], int n) {


for (int i = 0; i < n - 1; i++)
for (int j = 0; j < n - i - 1; j++)
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}

int main() {
int n, x;
printf("Enter number of elements:
");
Insertion insSort(arr, n);
printf("Sorted array: ");
#include <stdio.h> printArr(arr, n);

void insSort(int arr[], int n) { return 0;


if (n <= 1) }
return;

insSort(arr, n - 1);

int last = arr[n - 1];


int j = n - 2;

while (j >= 0 && arr[j] > last) {


arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = last;
}

void printArr(int arr[], int n) {


for (int i = 0; i < n; i++)
printf("%d ", arr[i]);
printf("\n");
}

int main() {
int n;
printf("Enter number of elements:
");
scanf("%d", &n);

int arr[n];
printf("Enter %d elements: ", n);
for (int i = 0; i < n; i++)
scanf("%d", &arr[i]);
Selection printf("Sorted array: ");
#include <stdio.h> printArr(arr, n);

void selSort(int arr[], int n, int idx) { return 0;


if (idx == n) }
return;

int minIdx = idx;


for (int i = idx + 1; i < n; i++)
if (arr[i] < arr[minIdx])
minIdx = i;

int temp = arr[minIdx];


arr[minIdx] = arr[idx];
arr[idx] = temp;

selSort(arr, n, idx + 1);


}

void printArr(int arr[], int n) {


for (int i = 0; i < n; i++)
printf("%d ", arr[i]);
printf("\n");
}

int main() {
int n;
printf("Enter number of elements:
");
scanf("%d", &n);

int arr[n];
printf("Enter %d elements: ", n);
for (int i = 0; i < n; i++)
scanf("%d", &arr[i]);

selSort(arr, n, 0);
Bubble printArr(arr, n);

#include <stdio.h> return 0;


}
void bubSort(int arr[], int n) {
if (n == 1)
return;

for (int i = 0; i < n - 1; i++)


if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}

bubSort(arr, n - 1);
}

void printArr(int arr[], int n) {


for (int i = 0; i < n; i++)
printf("%d ", arr[i]);
printf("\n");
}

int main() {
int n;
printf("Enter number of elements:
");
scanf("%d", &n);

int arr[n];
printf("Enter %d elements: ", n);
for (int i = 0; i < n; i++)
scanf("%d", &arr[i]);

bubSort(arr, n);
printf("Sorted array: ");

You might also like