美文网首页
数组的折半原理

数组的折半原理

作者: 893705279802 | 来源:发表于2018-12-04 12:24 被阅读0次

    必须是有序排列

    折半公式:(min+max)/2

    指针思想:

                    折半的索引和查找元素比较

                    元素>中间索引上的元素

                    小指针=中间+1

                    元素<中间索引上的元素

                    大指针=中间-1

                    小指针>大指针索引,结束

                    没找到-1的索引

                    元素==数组中间索引上的元素,结束

    int index = binarySearch(arr,9);

    public static int binarySearch(int [] arry, int key){

            int min=0;

            int max=arr.length-1;

            int mid =0;

    while(min<=max){

        mind=(min+max)/2;

        if(key>arr[mid]){

            mid=mid+1;

                            } 

                else if(key<arr[mid]){

                    mid=mid-1;

                    }

            else{

                   return mid;

                }

        }

    }

    return  -1;


    相关文章

      网友评论

          本文标题:数组的折半原理

          本文链接:https://www.haomeiwen.com/subject/nymycqtx.html