How to write a c program to binary search in C Programming ?
Solution:
#include <stdio.h>
#define SIZE 7
void bubbleSort(int *A, int length);
int binarySearch(int *A, int start, int end, int value);
int main()
{
int arr[SIZE] = {11, 1, 8, 5, 6, 8, 4};
int i;
bubbleSort(arr, SIZE);
for(i = 0; i < SIZE; i++)
printf("%d ", arr[i]);
printf("\n");
printf("%d\n", binarySearch(arr, 0, SIZE - 1, 3));
return 0;
}
void bubbleSort(int *A, int length)
{
int i, j;
for(i = 1; i <= length - 1; i++)
{
for(j = 0; j < length - i; j++)
if(A[j] > A[j + 1])
{
int temp = A[j];
A[j] = A[j + 1];
A[j + 1] = temp;
}
}
}
int binarySearch(int *A, int start, int end, int value)
{
int mid = (start + end) / 2;
if(start > end) return -1;
else if(A[mid] == value) return mid;
else if(value < A[mid]) return binarySearch(A, start, mid - 1, value);
else return binarySearch(A, mid+ 1, end, value);
}
https://en.wikipedia.org/wiki/Binary_search_algorithm
Learn More :
C Program
- Using Bash to input stuff into c program
- Difficult C Programming Questions
- Write a c program to find largest among three numbers using binary minus operator three numbers using binary minus operator
- PRINTING ASCII VALUE USING C PROGRAM
- MULTIPLICATION OF TWO MATRICES USING C PROGRAM
- FIND OUT SUM OF DIAGONAL ELEMENTS OF A MATRIX USING
- Write A C Program To Find Out Transport Of A Matrix
- Factorial of 100 in C Program
- Multiplication of large numbers in c
- Division of Large Numbers in C Program
- BINARY SEARCH USING C PROGRAM
- BINARY SEARCH THROUGH RECURSION USING C PROGRAM
- FIND FACTORIAL OF A NUMBER USING RECURSION IN C PROGRAM
- FIND GCD OF A NUMBER USING RECURSION IN C PROGRAM
- FIND SUM OF DIGITS OF A NUMBER USING RECURSION USING C PROGRAM
- FIND POWER OF A NUMBER USING RECURSION USING C PROGRAM
- REVERSE A NUMBER USING RECURSION IN C PROGRAM
- SWAP TWO VARIABLES WITHOUT USING THIRD USING C PROGRAM VARIABLE
- Write A C Program For Swapping Of Two Arrays
- SWAPPING OF STRINGS USING C PROGRAM
- CONVERSION FROM DECIMAL TO OCTAL USING C PROGRAM
- CONVERSION FROM DECIMAL TO OCTAL USING C PROGRAM
- CONVERSION OF DECIMAL TO BINARY USING C PROGRAM
- CONVERSION OF FAHRENHEIT TO CENTIGRADE USING C PROGRAM
- C or C++ Program To Find Bonus Amount