编辑代码

import java.util.Arrays;

public class BinarySearch {

    public static int binarySearch(int[] arr, int k) {
        Arrays.sort(arr); //确保数组有序
        int left = 0;
        int right = arr.length - 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表示未找到
    }

    public static void main(String[] args) {
        int[] array = {85, 63, 52, 34, 25, 17, 6};
        int targetElement = 6; 

        int result = binarySearch(array, targetElement);

        if (result != -1) {
            System.out.println("元素 " + targetElement + " 在数组中的索引位置为 " + result);
        } else {
            System.out.println("元素 " + targetElement + " 未在数组中找到");
        }
    }
}