二分查找C语言完整代码
时间: 2024-10-15 20:04:28 浏览: 95
C语言中的二分查找(Binary Search)算法代码如下[^2]:
```c
// 定义二分查找函数
Position BinarySearch(List L, ElementType X) {
// 初始化查找区间的左右边界
int low = 0;
int high = (int) sizeof(L) / sizeof(ElementType); // 获取数组长度
while (low <= high) {
// 计算中间索引
int mid = (low + high) / 2;
// 比较中间元素与目标值
if (L[mid] == X) {
return mid; // 找到目标元素,返回其位置
} else if (L[mid] < X) {
// 目标值大于中间元素,缩小左半部分查找范围
low = mid + 1;
} else {
// 目标值小于中间元素,缩小右半部分查找范围
high = mid - 1;
}
}
// 如果未找到目标元素,返回 -1
return -1;
}
```
这个函数通过不断将搜索范围减半来定位目标元素,直到找到或搜索范围为空。
阅读全文