本篇由黑壳博客整理
本文来源最短的时间了解二分查找
本篇笑点
女人兄弟会背叛你,但数学不会,不会就是不会。
你得知道这篇讲的些什么
本文586字,阅读可能需要1~2分钟
本篇主要提到二分查找,以假设场景来带你了解二分查找的原理。
说明
二分查找是一种算法,其输入是一个有序的元素列表(圈重点“有序”)。如果要查找的元素包在列表中,二分查找返回其位置,否则返回null。
原理
可以先随意想1~100的数字
我们要的目标是以最少的次数猜到这个数字,你每次猜测一个结果,我会说大了、小了或者对了。
假如你从1开始依次向上猜,每次猜测都只能排除一个数字。这在算法里属于简单查找,更准确的说法是傻找。如果我想的是99,那要依次才99次,才能猜对。
打起精神来,开始讲重点了
我有一个更佳的猜法,比如我们从50开始,如果小了,但是至少可以排除一半的数字,然后我们继续猜75,如果大了,那余下的数字又可以排除一半!
在使用二分查找时,你猜测的是中间的数字,从而每次都将余下的数字排除一半。接下来猜63(50~75中间的数字)。这就是二分查找。
所以不管想到那个数字,都能在7次以内猜到,因为每次猜到都将排除很多数字。
这就是二分查找的原理。
附言
本篇如有错误,请及时指出,马上修改。
下一篇,我会整理算法的运行时间的文章,相信我你会感兴趣的!!!
非常非常重要的事情
本文首发于【黑壳博客】,文章持续更新,可以微信搜索【黑壳博客】点个关注 文章第一时间阅读。
黑壳博客 blog.bhusk.comE-mail:keshu@bhusk.com
本文由 黑壳博客的壳叔 创作或转载,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。
可自由转载、引用,但需署名作者且注明文章