博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二分查找
阅读量:7029 次
发布时间:2019-06-28

本文共 682 字,大约阅读时间需要 2 分钟。

二分查找:分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的,使查找成功,或直到子表不存在为止,此时查找不成功。

 

例子:

对于一个有序数组,我们通常采用二分查找的方式来定位某一元素,请编写二分查找的算法,在数组中查找指定元素。

给定一个整数数组A及它的大小n,同时给定要查找的元素val,请返回它在数组中的位置(从0开始),若不存在该元素,返回-1。若该元素出现多次,请返回第一次出现的位置。

 

public class BinarySearch {    public int getPos(int[] A, int n, int val) {        // write code here        if(n<=0 || A==null) return -1;        int mid=0,L=0,R=n-1;        while(L
val){ R=mid-1; }else if(A[mid]

 

转载于:https://www.cnblogs.com/tangZH/p/7653360.html

你可能感兴趣的文章
【转】关于大型网站技术演进的思考(十五)--网站静态化处理—前后端分离—中(7)...
查看>>
小白学习之Code First(二)
查看>>
谁在追踪谁?
查看>>
HTTP请求返回状态码详解
查看>>
句柄类
查看>>
GitLab
查看>>
MySQL安装部署
查看>>
m6-第10周作业
查看>>
Salesforce Apex学习 : 利用Schema命名空间中的DescribeSObjectResult类型来获取sObject对象的基本信息...
查看>>
沃通SSL证书支持最新顶级域名
查看>>
网站建设流程图
查看>>
cc2540 usbdongle 安装驱动失败的终极解决方法 【原创,多图】
查看>>
STS(Eclipse)+Maven将war项目部署到远程的tomcat
查看>>
云虚机选购指南之一怎样选择一款适合自己的云虚拟主机
查看>>
11月9日云栖精选夜读:阿里90后工程师_如何用AI程序写出双11打call歌?
查看>>
信息技术手册查重错误比对分析程序开发记录2
查看>>
centos 怎么测试mysql是否安装成功
查看>>
niku 5.8
查看>>
Vue组件之间的传值
查看>>
工作记录--使用FFmpeg将一个视频文件中音频合成到另一个视频中
查看>>