21xrx.com
2025-03-31 04:08:42 Monday
文章检索 我的文章 写文章
C++实现二分查找算法的代码
2023-06-23 08:27:50 深夜i     27     0
C++ 二分查找 实现 算法 代码

二分查找算法是一种高效的查找方式,它适用于有序的数组或列表。而C++作为一门常用的编程语言,也提供了实现二分查找的代码库。下面是C++实现二分查找算法的代码:

int binarySearch(int arr[], int l, int r, int x) {
  if (r >= l) {
    int mid = l + (r - l) / 2;
    if (arr[mid] == x)
      return mid;
    if (arr[mid] > x)
      return binarySearch(arr, l, mid - 1, x);
    return binarySearch(arr, mid + 1, r, x);
  }
  return -1;
}

这段代码的实现思路是将数组或列表中的元素一分为二,然后判断目标元素与中间元素的大小关系,再递归执行上面的过程,直到找到目标元素或无法继续分割。

在这段代码中,参数arr可以是数组或列表,参数l表示左边界,参数r表示右边界,参数x表示目标元素。如果目标元素在数组或列表中存在,函数返回目标元素在数组或列表的下标,否则返回-1。

要使用这段代码,只需要调用该函数传入对应的参数即可。例如:

int arr[] = 1;
int n = sizeof(arr) / sizeof(arr[0]);
int x = 7;
int result = binarySearch(arr, 0, n - 1, x);
if (result == -1)
  cout << "Element not present";
else
  cout << "Element found at index " << result;

这段代码将在数组arr中查找目标元素x,如果找到了则输出元素在数组中的下标,否则输出“Element not present”。

总之,C++实现二分查找算法的代码是一种高效、可靠的查找方式,可用于数组或列表等数据结构的快速查找。

  
  

评论区

请求出错了