数据结构-二分查找

半腔热情 提交于 2019-11-30 06:09:04
package com.datastack.search;
/**
 * 二分查找
 */
public class BinarySearch {
    public static void main(String[] args) {
        int[] arr = new int[]{1,2,3,4,5,6,7,8,9};
        System.out.println(binarySearch(arr, 9));
    }
    public static int binarySearch(int[] array,int key){
        int low = 0;
        int hight = array.length -1;
        int middle = 0;
        while(low<=hight){
            middle=(low+hight)/2;
            int value = array[middle];
            if(value>key){
                hight = middle-1;
            }else if(value<key){
                low = middle+1;
            }else{
                return middle;
            }
        }
        return -1;
    }
}

 

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