DS LAB 6 Program
Implement linear search using one and two dimensional arry
// Search 1D array
#include <stdio.h>
int search(int arr[], int N, int x)
{
for (int i = 0; i < N; i++)
if (arr[i] == x)
return i;
return -1;
}
// Driver code
int main(void)
{
int arr[] = {2, 3, 4, 10, 40};
int x = 10;
int N = sizeof(arr) / sizeof(arr[0]);
// Function call
int result = search(arr, N, x);
(result == -1)
? printf("Element is not present in array")
: printf("Element is present at index %d", result);
return 0;
}
//output
Element is present at index 3
// Search 2D array
#include <stdio.h>
void linearSearch(int arr[3][3], int target, int *result)
{
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
if (arr[i][j] == target)
{
result[0] = i;
result[1] = j;
return;
}
}
}
result[0] = -1;
result[1] = -1;
}
int main()
{
int arr[3][3] = {{3, 12, 9},
{5, 2, 89},
{90, 45, 22}};
int target = 89;
int result[2];
linearSearch(arr, target, result);
printf("Element found at index: [%d %d]\n", result[0], result[1]);
return 0;
}
//output
Element found at index: [1 2]
Comments
Post a Comment