以下是一個使用C語言實現二分查找算法的示例代碼:
#include <stdio.h>
// 二分查找函數
int binarySearch(int arr[], int n, int target) {
int left = 0;
int right = n - 1;
while (left <= right) {
int mid = left + (right - left) / 2;
if (arr[mid] == target) {
return mid;
} else if (arr[mid] < target) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return -1; // 未找到目標元素
}
int main() {
int arr[] = {1, 3, 5, 7, 9, 11, 13};
int target = 7;
int index = binarySearch(arr, 7, target);
if (index != -1) {
printf("目標元素 %d 在數組中的索引位置為 %d\n", target, index);
} else {
printf("未找到目標元素 %d\n", target);
}
return 0;
}
在這個示例中,通過 binarySearch
函數實現了二分查找算法,對一個已排序的數組進行查找。在 main
函數中,我們定義了一個數組 arr
,并且指定了目標元素 target
進行查找。最后輸出查找結果。