欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【查找】二分查找

程序员文章站 2024-03-17 18:50:10
...

二分查找,也称为折半查找

/**
 * 二分查找,折半查找
 * @param arr 有序数组
 * @param key 关键字
 * @return 关键字在数组中的下标
 */
public int binsearch(int[] arr, int key){
    int low = 0;
    int high = arr.length-1;
    while(low <= high){
        int mid = (low + high) / 2;
        if (arr[mid] == key) return mid;
        else if (arr[mid] < key) low = mid + 1;
        else if (arr[mid] > key) high = mid - 1;
    }
    return -1;
}