Java查找算法之二分法查找

来源:互联网 发布:考试宝典怎么样知乎 编辑:程序博客网 时间:2024/06/05 11:03

前言:讲究的就是一个清晰
原文出处:http://blog.csdn.net/u014158743/article/details/52590544

class Demo{    public static void main(String[] args)     {        //二分法查找:前提条件:被查找的数组必须是有序的         int[] arr = {23,34,45,56,67,78,89,120};        int key = 99;        int index = halfSearch(arr,key);        System.out.println("index="+index);    }    //二分法查找    //结果:下标或-1    //参数:数组和被找的数    public static int halfSearch(int[] arr,int key)    {        int min = 0,max = arr.length-1,mid;        while(min<=max)        {            mid = (min+max)>>1;            if(key>arr[mid])                min = mid+1;            else if(key<arr[mid])                max = mid-1;            else                return mid;        }        return -1;    }}
1 0
原创粉丝点击