大O表示法__二分查找

Posted dogfaraway

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大O表示法__二分查找相关的知识,希望对你有一定的参考价值。

例如,有1~8,查找其中的一个数,

  1. 如果采用简单查找,也就是遍历方法,从1开始,最多可能需要查找8次。为什么呢?
    假设这个数字是8,从1开始,依次2,3,4,。。。,直至8,查找次数确实为8次。
  2. 采用二分方法,最多需要查找3次。为什么呢?
    仍然假设这个数字是8,将1~8从中间分开,假设第一次猜测为5,反馈比5大,于是第二次猜测为5~8之间的数,由于5和6相邻,于是猜测为7,反馈结果仍然比7大,第三次猜测为8,命中。
    假设这个数字为6,重复二分过程,第一次猜测为5,反馈比5大,第二次猜测为7,反馈比7小,于是第三次猜测为6,命中。
    设定其余数字为目标数,仍然可以按二分法减少猜测次数。

总结,这就是二分查找。它的查找次数需要多少次呢?

二分也就是相当于,将多少个2相乘的结果为8,于是 2= 8,即 Log28 = 3

假设,在n个自然数中进行查找,如果采用简单查找,需要查询n次,时间复杂度为O(n);如果采用二分查找法,需要查询log2n次,时间复杂度为O(log2n)。

以上是关于大O表示法__二分查找的主要内容,如果未能解决你的问题,请参考以下文章

复盘笔记二分查找和大O表示法

算法_001_二分查找算法

二分查找和大O表示法

算法入门——二分查找,旅行商问题,大O表示法

二分查找&二分答案

算法图解1 - 二分查找和大O表示法