c语言实现二分查找代码
时间: 2023-11-05 09:59:02 浏览: 134
二分查找法是一种高效的查找方法,它要求被查找的数组必须有序。以下是C语言实现二分查找法的代码:
```c
void BinarySearch(int* arr, int key, int left, int right) {
while (left <= right) {
int mid = (left + right) / 2;
if (arr[mid] > key) {
right = mid - 1;
} else if (arr[mid] < key) {
left = mid + 1;
} else {
printf("找到了,对应的下标为:%d\n", mid);
return;
}
}
printf("找不到\n");
}
```
在这个代码中,我们通过不断缩小查找范围,从数组的中间开始与目标数字比较。如果中间元素大于目标数字,那么目标数字一定在左侧范围内,将右指针移到中间元素的左侧;如果中间元素小于目标数字,那么目标数字一定在右侧范围内,将左指针移到中间元素的右侧;如果中间元素等于目标数字,则找到了目标数字的下标。如果左指针大于右指针,表示没有找到目标数字。
阅读全文