酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

使用递归函数实现二分查找#include <stdio.h> int binary_search_rec(int a[], int left, int right, int target) { //todo:使用递归函数实现二分查找,查找成功则返回目标值索引,否则返回-1 return-1; int main(){ int a[7] ={ 0, 1, 2, 3, 5, 6, 7 }; for (int num = 0; num <8; num++) { printf("search %d: index:%d\n", num, binary_search_rec(a,0,6,num)); return 0;

```c #include <stdio.h> int binary_search_rec(int a[], int left, int right, int target) { if (left > right) { return -1; } int mid = left + (right - left) / 2; if (a[mid] == target) { return mid; } else if (a[mid] > target) { return binary_search_rec(a, left, mid - 1, target); } else { return binary_search_rec(a, mid + 1, right, target); } } int main() { int a[7] = {0, 1, 2, 3, 5, 6, 7}; for (int num = 0; num < 8; num++) { printf("search %d: index:%d\n", num, binary_search_rec(a, 0, 6, num)); } return 0; } ``` [2024-10-17 10:29:01 | AI写代码神器 | 248点数解答]

相关提问