- 论坛徽章:
- 0
|
http://blog.minidx.com/2008/02/03/468.html
#include stdio.h>
#include stdlib.h>
int BinarySearch(int *a,int x,int n)
{
int left=0;
int right=n-1;
while(left=right)
{
int middle=(left+right)/2;
printf("left=%d, right=%d\n",left,right);
if (x==a[middle])
return middle;
if (x>a[middle])
left=middle+1;
else
right=middle-1;
}
return -1;
}
int main(void)
{
int a[6] = {11,22,333,444,555,666 };
int ret = 0;
int num =0;
printf("input the integer:\n");
scanf("%d",&num);
ret = BinarySearch(a,num,6);
printf("ret=%d\n",ret);
return 0;
}
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/22617/showart_1355048.html |
|