继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【Algorithm】二分算法

冯文议
关注TA
已关注
手记 82
粉丝 1.4万
获赞 707

之前在面试的,被问到,一脸懵逼,在学校的时候,学过算法,出来工作后,就没有写过,这次面试,算是给我提个醒吧,因此,来学习下算法。

二分查找

简单来说,就是一个有序数列,每次对比中间。

因此,算法如下:

    public static int binarySearch2 (int [] arrays, int key) {

        int length = arrays.length;
        int mid;
        int start = 0;
        int end = length - 1;

        while (start <= end) {

            mid = (end - start) / 2 + start;

            if (key < arrays[mid]) {
                end = mid - 1;
            } else if (key > arrays[mid]) {
                start = mid + 1;
            } else {
                return mid;
            }
        }

        return -1;
    }

代码:BinarySearch.java

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP