首页 > 编程语言 > 详细

Java基础--二分查找算法

时间:2019-07-14 16:23:26      阅读:95      评论:0      收藏:0      [点我收藏+]

二分查找算法(折半查找):前提是在已经安排好序的数组中,通过将待查找的元素与中间索引值对应的元素进行比较,若大于中间索引值对应的元素,去右半部分查找,否则,去左半部分查找。以此类推,直到找到为止,找不到返回一个负数。

必须保证 数列是有序的

例:

public static void main(String[] args) {
        int[] num = {10,20,50,65,88,90};
        int index = binarySearch(num,10 );
        System.out.println(index);
        
    }
    //二分查找算法
    public static int binarySearch(int[] num,int key) {
        int start =0;//开始下标
        int end =num.length-1;//结束下标
        while(end>=start) {
            int middle =(start+end)/2;
            if(num[middle]<key) {
                start = middle+1;
            }else if(num[middle]>key) {
                end = middle-1;
            }else {
                return middle;
            }
        }
        return -1;
        
    }

 

Java基础--二分查找算法

原文:https://www.cnblogs.com/s1023/p/11184286.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!