二分查找

爱⌒轻易说出口 提交于 2019-12-04 08:49:54

二分查找

/**
 * 二分查找
 */
public class BianarySearch {
    public static void main(String[] args) {
        int[] arr = {12, 34, 45, 56, 57, 67, 78, 89, 90, 99};
        System.out.println(getIndex(arr, 99));
    }
    public static int getIndex(int[] arr, int value){
        int min = 0;
        int max = arr.length-1;
        int mid = (min+max)/2;

        while(arr[mid] != value){
            if(arr[mid] > value){
                max = mid - 1;
            }else if(arr[mid] < value){
                min = mid + 1;
            }
            mid = (min+max)/2;

            if(min > max){
                return -1;
            }
        }
        return mid;
    }
}

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!