c++代码二分查找算法的设计
时间: 2024-10-14 22:01:23 浏览: 15
在C++中,二分查找算法也被称为折半搜索,它是一种在有序数组中查找特定元素的高效搜索策略。以下是基本的二分查找算法设计:
```cpp
#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)
right = mid - 1;
// 否则,扩大搜索范围至右半部分
else
left = mid + 1;
}
// 如果没有找到,返回-1表示未找到
return -1;
}
int main() {
int arr[] = {1, 3, 5, 7, 9, 11}; // 示例有序数组
int size = sizeof(arr) / sizeof(arr[0]);
int target = 7; // 要查找的目标值
int result = binarySearch(arr, 0, size - 1, target);
if (result != -1)
cout << "Element found at index: " << result << endl;
else
cout << "Element not found in the array." << endl;
return 0;
}
```
阅读全文