二分查找(折半查找)

穿精又带淫゛_ 提交于 2019-12-30 03:44:14
二分查找又叫折半查找,要求待查找的序列有序。每次取中间位置的值与待查关键字比较,如果中间位置 的值比待查关键字大,则在前半部分循环这个查找的过程,如果中间位置的值比待查关键字小, 则在后半部分循环这个查找的过程。直到查找到了为止,否则序列中没有待查的关键字。public class biSearch {    public static int halfSearch(int[] arr, int number) {        int min = 0;        int max = arr.length;        int mid = 0;        while (min <= max) {            mid = (min + max) / 2;            if (number < arr[mid]) {                max = mid - 1;            } else if (number > arr[mid]) {                min = mid + 1;            } else {                return mid;            }        }        return -1;    }    public static void main(String[] args) {        int[] arr = {2, 4, 6, 7, 9};       int x = halfSearch(arr, 7);        System.out.println(x);    }}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!