二分查找法
需要进行提前排序
int binarySearch(void *p, int key ) {
int high = N - 1;
int low = 0;
int mid = 0;
int *arr = p;
while (low <= high) {
mid = (high + low) / 2;
int mindValue = arr[mid];
if (mindValue==key) {
return 1;
}
else if (mindValue>key) {
high = mid - 1;
}
else {
low = mid + 1;
}
}
return 0;
}
int binarySearch(void *p, int key ) {
int *arr = p;
for (int high = N - 1 , low = 0 , mid = 0; low <= high; mid = (high + low) / 2)
{
int mindValue = arr[mid];
if (mindValue == key)
return 1;
else if (mindValue>key)
high = mid - 1;
else
low = mid + 1;
}
return 0;
}