编辑代码

public class BinarySearch {

    // 二分查找算法
    static boolean binarySearch(int[] arr, int target) {
        int left = 0;
        int right = arr.length - 1;

        while (left <= right) {
            int mid = left + (right - left) / 2;

            // 检查中间元素是否是目标元素
            if (arr[mid] == target) {
                return true;
            }

            // 如果目标元素在左半部分,缩小右边界
            if (arr[mid] > target) {
                right = mid - 1;
            }
            // 如果目标元素在右半部分,缩小左边界
            else {
                left = mid + 1;
            }
        }

        // 如果循环结束仍未找到目标元素,则目标元素不存在
        return false;
    }

    public static void main(String[] args) {
        //有序数组
        int[] sortedArray = {6, 17, 25, 34, 52, 63, 85};
        //目标值
        int targetElement = 6;

        // 调用二分查找函数
        boolean result = binarySearch(sortedArray, targetElement);

        // 输出结果
        if (result) {
            System.out.println("元素 " + targetElement + " 存在于数组中。");
        } else {
            System.out.println("元素 " + targetElement + " 不存在于数组中。");
        }
    }
}