二分法查找是基于有序_201,查找顺序查找

查找算法中顺序查找算是最简单的了,无论是有序的还是无序的都可以,也不需要排序,只需要一个个对比即可,但其实效率很低。我们来看下代码

1public static int search1(int[] a, int key) {
2    for (int i = 0, length = a.length; i 3        if (a[i] == key)
4            return i;
5    }
6    return -1;
7}

如果找到就返回查找的数所在数组中的下标,如果没找到就返回-1。还有说上面的代码可以优化,使用一个哨兵,免去了每次都要越界的判断,但通过实际测试运行效率并没有提高,无论测试的数据是多还是少运行的时间都差不多,我们来看下代码。

1public static int search2(int[] a, int key) {
2    int index = a.length - 1;
3    if (key == a[index])
4        return index;
5    a[index] = key;
6    int i = 0;
7    while (a[i++] != key) ;
8    return i == index + 1 ? -1 : i - 1;
9}

顺序查找是最简单的一种查找算法,对数据的要求也很随意,不需要排序即可查找。后面会介绍二分法查找,插值查找和斐波那契查找都是基于已经排序过的数据。

b4d0d3193b408b9688a9e03afde49bdc.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/305992.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

河南大学计算机组成原理,河南大学计算机组成原理考点

河南大学计算机组成原理考点 (34页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!11.90 积分第1章 计算机系统概论1、计算机硬件的五大部件?三大部分?运算器 存储器…

【Git】Git-常用命令备忘录(二)

开发过程中,各种问题都会出现,比如手残,眼花,头昏,导致了误操作,那么git作为一款由Linus亲自操刀,替换掉BitMover公司的BitKeeper的优秀源代码管理工具,让您在各种乱七八糟的误操作中&#xff0…

zipsys驱动签名工具_全球首发 300系列主板USB WIN7 64位驱动 SMXDIY

本版为改版驱动,仅供SMXDIY会员学习测试,禁止传播。众所周知,H310/B360/H370/Z390是没USB的WIN7驱动的。网上也找不到相关的资料,大家普遍默认没驱动,但这已经成为历史。我们这发布的是真的驱动,可以整合到…

.NET/C#程序开发中如何更优美地实现失败任务重试的逻辑?

背景在.NET中,异常是指成员没有完成它的名称宣称可以完成的行动。在异常的机制中,异常和某件事情的发生频率无关。有时候需要对一些失败的任务进行多次的重试,如果重试的次数达到我们设定的阀值,则再放弃任务。解决方案使用一个静…

电子商务与计算机科学与技术的相关性,电子商务、计算机科学与技术、法学等相关专业。.doc...

电子商务、计算机科学与技术、法学等相关专业。.doc优先选派专业:金融学、财务管理、经济学、市场营销、电子商务、计算机科学与技术、法学等相关专业。交流学校专业设置情况详见链接: /jwc/jxjh/zyjs.asp1、专业建设概况:学校已形成以经济学…

excel筛选排序从小到大_excel表格怎么按字数的多少来排列!

excel表格怎么按字数的多少来排列为了更好的做好我们的语料编定及翻译工作,尤其是个别语料数量较多,最多可达2000条。我们可以将字数少的,意图明确的,不会有异议的,我们可以根据每句话的字数,用excel来进行…

计算机系统的工作方式,某计算机系统输入/输出采用双缓冲工作方式,其工作过程如下图所示,假设磁盘块与缓冲 - 信管网...

第2题:实时操作系统(RTOS)内核与应用程序之间的接口称为( )。A.I/O接口B.PCIC.APID.GUI答案解析与讨论:www.cnitpm.com/st/2867029381.html第3题:嵌入式处理器是嵌入式系统的核心部…

怎么从转移特性曲线上看dibl_「科普向」这篇让你快速搞懂IGBT的静态特性

IGBT的静态特性其实并非难以理解的东西,即便是对于外行人而言。刚接触那会儿,看到转移特性、输出特性之类的就想溜之大吉,加之网上查询的资料一概笼统简单,只描述特性曲线所表示的关系结果,却并不解释曲线为何这里弯曲、那里平直&…

对CORS OPTIONS预检请求的一些思考

前后端分离模大势所趋,跨域问题更是老生常谈。《程序员应对浏览器同源策略的姿势》一文提到三种跨域请求方案,重点讲述了w3c和浏览器厂商推出的CORS规范。同源策略 所谓同源是指域名、协议、端口相同。不同源的浏览器脚本(javascript、ActionScript、ca…

2020计算机单招的大专,2020专科和单招的区别

单招即单招招生是国家授权高职院校独立组织考试录取的一种方式,必须于高考前完成录取。众所周知,单招学校大部分是专科学校,那么,单招和专科有什么区别呢?下面是小编为大家收集的关于2020专科和单招的区别_选择单招有什么好处。希…

前端跨域请求get_前端实现跨域访问

1.ajax方式跨域直接使用jsonp即可dataType : "jsonp",2.使用getJson跨域获取数据$.getJSON("http://api.taobao.com/apitools/ajax_props.do&jsoncallback?",function (data) {alert(data);});执行原理:发送请求时需要传一个callback的回调…

如何在 ASP.NET Core 中使用 NLog 的高级特性

NLog 是一个开源的轻量级日志框架,提供了丰富的日志路由和管理功能,同时 NLog 也是非常容易的去配置和扩展,其实在之前的文章中我已经讨论过了 Nlog,在这篇我准备继续和大家讨论一下 NLog 的更多高级功能。接下来看看如何通过 .co…

计算机模拟分子设计,计算机模拟分子材料.pdf

计算机模拟分子材料.pdf计算机模拟与材料分子设计计算机模拟与材料分子设计CCCCompuomputttterer SiSiSiSimumullllaatititition anon andddd MMMMoollllecuecullllarar DDDDesesiiiigngnDalian Universityof Technology Graduate Course, Lecture 5 2010 AutumnLectureLecture…

python是用来初始化_python的初始化运行了哪些?

下面的3个print一个是在模块下面,一个是函数里面,一个是类名下面(不在方法里面)1、 运行这段代码可以发现第3行和11行可以打印出来。第7行没有打印出来。所以可以放心,函数或者方法里面就算有错误,不调用它是不可能报错的&#xf…

强烈推荐:SiteServer CMS开源免费的企业级CMS系统!

说到CMS,大家都知道织梦、帝国CMS、HPCMS、动易等知名老牌的!这些东西也可以拿来就用,上次看到一个个人开源的cms:MCMS。基于SpringBoot 2架构,前端基于vue、element ui。每月28定期更新版本,为开发者提供…

计算机函数公式中怎么合并合并,Excel用函数和公式瞬间实现把表格全部合并到一个表中去...

将多张工作表汇总到一张工作表,这是什么意思呢?可以理解为把表格全部合并到一个表中去,之前使用VBA代码实现,本文将教会大家一种快速的方法,用函数和公式瞬间实现多表合并。例如:有N多个以月份命名的excel工…

permutations python_为什么Python的itertools.permutations包含重复项? (当原始列表重复时)...

为什么Python的itertools.permutations包含重复项? (当原始列表重复时)普遍认为,n个不同符号的列表有n! 排列。 但是,当符号不明确时,在math和其他地方最常见的惯例似乎是只计算不同的排列。 因此,列表[1, …

. NET5一出,. NET岗面试普遍喊难,真相是…

.NET高级开发/架构师笔试题TOP101、如何设计一个高并发系统?2、如何实现一个.Net5 IOC框架?3、100W并发4G数据,10W并发400G数据,如何设计Redis存储方式?4、如何实现负载均衡Hash一致性算法?5、DotNetty能够…

计算机所有数据的表示方式都是用,计算机数据表示

1、进制1.1 进制的由来进制:是一种进位的方式。x进制,表示逢x进1。计算机的电子原件的状态:开,关。那么,我们表达数据的时候,也是按照开,关的状态来表示的。如果我们表达数据仅仅使用这两种昨天…

数据库年月日时分秒_数据库基本使用系列(二)

书接上回,上回说到数据库的发展历史,存储引擎以及在库层面的一些操作,这次来讲一下数据库中的一些基本的一些数据格式以及对表的一些操作。数据类型数据库提供的数据类型,包括整数类型、浮点数类型、定点数类型、位类型、日期和时…