Binary search in C
Binary Search:
- in computer science, binary search, also known as half-interval search, logarithmic search, or binarychop, is a search algorithm that finds the position of a target value within a sorted array.
- It necessary that given data is sorted in ascending order or descending order.
- below is the program of binary search for ascending ordered data.
PROGRAM :
#include <stdio.h>
#include <stdlib.h>
int main(int n,int a[10])
{
int i,mid,key,ub,lb;
printf("How many numbers you wants to enter=");
scanf("%d",&n);
lb=0;
ub=n-1;
printf("\n%d elements are=",n);
for(i=0;i<n;i++){
printf("\na[%d]=",i);
scanf("%d",&a[i]);
}
printf("\nKey=",n);
scanf("%d",&key);
mid=(lb+ub)/2;
while(a[mid]!=key && lb<=ub){
if(key<a[mid]){
ub=mid-1;
}
else{
lb=mid+1;
}
mid=(lb+ub)/2;
}
if(a[mid]==key){
printf("\nNumber has found");
printf("\nPosition of number is %d",mid+1);
}
else{
printf("Number hasn't found");
}
return 0;
}
OUTPUT:
How many numbers you wants to enter=5
5 elements are=
a[0]=12
a[1]=45
a[2]=56
a[3]=89
a[4]=90
Key=89
Number has found
Position of number is 4
Comments
Post a Comment