如何使用c语言二分法查找一个数

   2024-11-04 4340
核心提示:以下是一个示例代码,漂亮的实现了使用C语言的二分法查找一个数:#include stdio.hint binarySearch(int arr[], int n, int targ

以下是一个示例代码,漂亮的实现了使用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; // 返回-1表示未找到目标数}int main() {    int arr[] = {2, 4, 6, 8, 10, 12, 14, 16, 18};    int n = sizeof(arr) / sizeof(arr[0]);    int target = 10;        int result = binarySearch(arr, n, target);        if (result != -1) {        printf("目标数 %d 找到在索引 %d\n", target, result);    } else {        printf("目标数 %d 未找到\n", target);    }        return 0;}

您可以将要查找的数组和目标数传递给binarySearch函数,并在函数返回的索引位置找到目标数。如果未找到目标数,则函数将返回-1。在上面的示例中,目标数10在数组中的索引3处找到。

 
举报打赏
 
更多>同类维修大全
推荐图文
推荐维修大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号