折半查找,又称为二分查找。这种查找方法要求查找表的数据是线性结构保存,并且还要求查找表中的数据是按关键字由小到大有序排列。
int binarysearch(int s[],int n,int key)
{int low,high,mid;
low = 0;
high = n -1;
while(low <= high)
{
mid = (low + high) /2;
if(s[mid] == key)
return mid;
else if(s[mid] > key)
high = mid -1;
else
low = mid +1;
}
return -1;
}