binarysearch recursion
binarysearch recursion
h>
int binarysearch(int a[],int l,int u,int key);
void bubblesort(int a[],int n);
int main()
{
int a[60],i,n,l,u,mid,key,flag=0;
flag=binarysearch(a,l,u,key);
if(flag!=0)
{
printf("\n element is available at %d place",flag);
}
else
{
printf("\n element is not available place");
}
return 0;
}
int binarysearch(int a[],int l,int u,int key)
{
int mid;
if(l<=u)
{
mid=(l+u)/2;
if(key==a[mid])
{
return mid;
}
else if(key<a[mid])
{
return binarysearch(a,l,mid-1,key);
}
else
{
return binarysearch(a,mid+1,u,key);
}
}
else
{
return 0;
}
}
void bubblesort(int a[],int n)
{
int i,j;
for(i=0;i<n;i++)
{
for(j=0;j<n-1-i;j++)
{
if(a[j]>a[j+1])
{
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
}