对于有序数组的二分查找算法

来源:互联网 发布:网络电缆套什么定额 编辑:程序博客网 时间:2024/04/25 17:06
//前提是数组元素有序
int binary_Search(int *arr, int low, int height, int num)
{
while (low <= height)
{
int index = (low+height)/2;
if (num < arr[index])
height = index-1;
else if (num > arr[index])
low = index+1;
else
return index;
}
return -1;
}


int main(void)
{
int a[10] = {1,2,3,4,5,6,7,8,9,10};
printf("find the index is  %d",binary_Search(a,0,9,80));
system("pause");
return 0;

}


看着很简单,自己今天写了一下,还是出了几个小问题,贴出来,警示自己不能只看,要多用用。

0 0