算法思想: 先设想一个不大于100数,你可以几次猜出。首先猜50,大了;再猜25,小了;再猜······
代码实现:
int fun(int *a, int n, int key)
{
int low,high,mid;
low = 0;
high = n-1;
while(low <= high)
{
mid = (low+high)/2;
if(key < a[mid])
high = mid-1;
else if(key > a[mid])
low = mid+1;
else
return mid;
}
return 0;
}