二进制搜索算法完整代码
时间: 2023-07-09 14:37:08 浏览: 124
下面是二进制搜索算法的完整代码实现(使用Python语言):
```python
def binary_search(arr, x):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == x:
return mid
elif arr[mid] > x:
right = mid - 1
else:
left = mid + 1
return -1
```
其中,arr表示有序数组,x表示待查找元素。该函数返回元素x在数组arr中的下标,如果没有找到则返回-1。
相关问题
二进制搜索算法完整代码c+
下面是二进制搜索算法的完整代码实现(使用C++语言):
```c++
#include <iostream>
using namespace std;
int binary_search(int arr[], int n, int x) {
int left = 0, right = n - 1;
while (left <= right) {
int mid = (left + right) / 2;
if (arr[mid] == x) {
return mid;
} else if (arr[mid] < x) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return -1;
}
int main() {
int arr[] = {1, 3, 5, 7, 9};
int n = sizeof(arr) / sizeof(arr[0]);
int x = 5;
int index = binary_search(arr, n, x);
if (index == -1) {
cout << "Element not found" << endl;
} else {
cout << "Element found at index " << index << endl;
}
return 0;
}
```
其中,arr表示有序数组,n表示数组的长度,x表示待查找元素。该函数返回元素x在数组arr中的下标,如果没有找到则返回-1。在main函数中,我们可以进行一些简单的测试,以验证binary_search函数的正确性。
阅读全文