Professional Documents
Culture Documents
long nc;
int binary_search(int* A, long n, int key)
{long l, r, m;
l=0; r=n-1;
while(l<=r)
{m= (l+r)/2;
nc++;
if (key<A[m])
{ r=m-1;}
else if(key>A[m])
{ nc++; l=m+1;}
else {return m;}
}
return -1;
}
long l=0, r=n-1;
int binary_search_rec(int*A, long l, long r, int key)
{long m;
if(l>r) {return -1;}
m=(l+r)/2;
if(key<A[m])
{r=m-1;
binary_search_rec(A,l,r,key);
}
else if(key>A[m])
{l=m+1;
binary_search_rec(A,l,r,key);
}
else {return m;}
}
nc=ns=0;
…..
qsort(A, n, sizeof(int), cmpi);