天天看点

二分查找函数

数组arr中折半查找x,若x不在则返回-1

int BinSearch(int *arr,int len,int key)
{
	int low = 0;
	int high = len-1;
	int mid;
	while(low <= high)
	{
		mid = (low+high)/2;
		if(key == arr[mid])
		{
			return mid;
		}
		else if(key < arr[mid])
		{
			low = mid+1;
		}
		else
		{
			high = mid-1;
		}
	}
	return -1;
}
           

继续阅读