编辑代码

#include <iostream>
#include <algorithm>	
int binarySearch(int arr[], int size, int k) {
	    std::sort(arr, arr + size); // 确保数组是有序的
	    int left = 0;
	    int right = size - 1;
	
	    while (left <= right) {
	        int mid = left + (right - left) / 2;
	
	        if (arr[mid] == k) {
            return mid;
	        } else if (arr[mid] < k) {
            left = mid + 1;
        } else {
            right = mid - 1;
	        }
    }	
        return -1; //返回-1即没有找到元素
        	}	
	int main() {
    int array[] = {85, 63, 52, 34, 25, 17, 6};
	    int size = sizeof(array) / sizeof(array[0]);
	    int targetElement = 6;
	
    int result = binarySearch(array, size, targetElement);
	
    if (result != -1) {
	        std::cout << "元素" << targetElement << " 在数组中的索引位置为 " << result << std::endl;
	    } else {
	        std::cout << "元素" << targetElement << " 未在数组中找到" << std::endl;
	    }

    return 0;
	}