前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >漫画:“浅谈”二分查找

漫画:“浅谈”二分查找

作者头像
用户5224393
发布2019-09-16 18:03:23
2470
发布2019-09-16 18:03:23
举报
文章被收录于专栏:Java研发军团

你干嘛呢

研究二分查找

我去,你学习了,给我说说怎么回事

也叫折半排序,这个方法查询比较高效,时间复杂度为O(log2n),不过他有一个要求,要是有序的顺序的存储结构表。

哇,大佬举个?

好,就是目标查找数每次都和数组的中间数做比较,中间数(mid)就是low(最低)+high(最高)的平均值的这个位置。如果目标数>mid,就把low往后移动,如果小则把high往前移动循环直到找到这个数为止,没有就返回-1好了,正好我画了图给你看看。

注:图片点击放大

可以哦,代码内

你怎么知道我刚写完

代码语言:javascript
复制
public static int binarySearch (int target,int[] ary) {
    int low = 0;
    int high = ary.length - 1;
    while (low <= high) {
        int middle = (low + high) >> 1;
        if (ary[middle] > target) {
            high = middle - 1;
        } else if (ary[middle] < target) {
            low = middle + 1;
        } else {
            return middle;
        }
    }
    return -1;
}

太赞了,向你学习,谢谢

不谢哈,回头我还请教你呢

好的,早点休息

嗯嗯拜拜

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java研发军团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档