21xrx.com
2024-12-22 21:50:28 Sunday
登录
文章检索 我的文章 写文章
C++语言程序实现二分法查找
2023-07-04 03:22:17 深夜i     --     --
C++ 二分法 查找 程序实现

二分法查找,也叫折半查找,是一种常用的算法,在排序好的数组中查找特定元素。它是一种高效的查找算法,比线性查找快很多。在实际开发中,二分法查找也经常被用到。

C++语言对于二分法查找提供了很好的支持。我们可以使用 C++ 语言编写一个简单的程序,来实现二分法查找。代码如下:


#include <iostream>

using namespace std;

int BinarySearch(int arr[], int left, int right, int target) {

  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[] = 6;

  int target = 7;

  int n = sizeof(arr) / sizeof(arr[0]);

  int result = BinarySearch(arr, 0, n - 1, target);

  if (result == -1)

    cout << "Element not found" << endl;

   else

    cout << "Element found at index " << result << endl;

  

  return 0;

}

这个程序的实现很简单。首先定义了一个函数 BinarySearch,它接受一个数组、一个左下标、一个右下标和一个目标元素作为参数。程序使用循环来查找目标元素,如果在数组中找到了目标元素,就返回其下标。否则,如果在循环结束时还没有找到目标元素,就返回 -1。

在主函数中,使用数组、目标元素和数组大小调用 BinarySearch 函数,并根据返回的结果来输出查找结果。

总结一下,C++语言可以非常方便地实现二分法查找。这个算法在查找大数据量时非常有用,它可以在较短的时间内找到目标元素。我们可以根据需要调整二分法查找的参数,来满足不同的需求。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复