java实现二分查找

简介: java实现二分查找

public class BinarySearch {
public static int binarySearch(int[] array, int target) {
int left = 0;
int right = array.length - 1;

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

        if (array[mid] == target) {
            return mid; // 找到目标元素,返回索引
        } else if (array[mid] < target) {
            left = mid + 1; // 目标元素在右侧,缩小搜索范围
        } else {
            right = mid - 1; // 目标元素在左侧,缩小搜索范围
        }
    }

    return -1; // 没有找到目标元素,返回 -1
}

public static void main(String[] args) {
    int[] array = {2, 5, 8, 12, 16, 23, 38, 56, 72, 91};
    int target = 23;

    int result = binarySearch(array, target);
    if (result != -1) {
        System.out.println("目标元素 " + target + " 的索引为 " + result);
    } else {
        System.out.println("目标元素 " + target + " 不存在于数组中");
    }
}
AI 代码解读

}

目录
打赏
0
0
0
0
50
分享
相关文章
【Java每日一题,左二分查找】Where is the Marble?
【Java每日一题,左二分查找】Where is the Marble?
|
4月前
|
在 Java 中实现二分查找法
【10月更文挑战第9天】
52 1
|
4月前
|
java冒泡排序与二分查找(详解)
java冒泡排序与二分查找(详解)
61 4
|
7月前
|
Java 使用二分查找快速定位元素位置
Java 使用二分查找快速定位元素位置
36 0
Java查找算法概览:二分查找适用于有序数组,通过比较中间元素缩小搜索范围;哈希查找利用哈希函数快速定位,示例中使用HashMap存储键值对,支持多值关联。
【6月更文挑战第21天】Java查找算法概览:二分查找适用于有序数组,通过比较中间元素缩小搜索范围;哈希查找利用哈希函数快速定位,示例中使用HashMap存储键值对,支持多值关联。简单哈希表实现未涵盖冲突解决和删除操作。
86 1
|
8月前
|
二分查找-非递归(java)
二分查找-非递归(java)
|
8月前
|
二分查找-递归(java)
二分查找-递归(java)
二分查找Java版
二分查找Java版
50 0
|
8月前
|
Java二分查找小例子
Java二分查找小例子
28 0
二分查找(Java) 详细讲解 一文足矣
二分查找(Java) 详细讲解 一文足矣
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等