对一组已排序的数据进行查找,二分查找是效率最高的查找算法 !!
#include <stdio.h>
int Binary_search(int s[], int size, int c)
{
size--;
int i = size/2;
for(; c != s[i]; )
{
if(c > s[i])
{
i = (i + size)/2;
}
else
{
i = i/2;
}
}
return i;
}
int main()
{
int N, c;
scanf("%d %d\n", &N, &c);
int s[N];//一个排序的数组
for(int i = 0; i < N; i++)
{
scanf("%d", &s[i]);
}
int index = Binary_search(s, N, c);
printf("%d", index);
return 0;
}