LoginSignup
1
3

More than 1 year has passed since last update.

なんで二分探索の計算量はO(log2N)になるの?

Posted at

二分探索の計算量がなんでO(log2 N)になるのか、
FEの勉強などで出てきても適当に飛ばしていましたが、
最近アルゴリズムを改めて書くようになり、触れる機会があったので
計算してみました。

図にするとこのようになります。
image.png

最大の探索回数で考えるので、
N個のデータからある値を二分探索する場合
計算回数をx回とすると、N/(2^x)が1となるまで繰り返します。
N/(2^x)=1
2^x=N
log2(2^x)=log2N
x=log2N
となり
二分探索の計算量は
O(log2N)
となることがわかります。

対数って感覚的に掴みずらくて、今までサラッと通り過ぎていましたが
図にすることで理解しやすくなりました。

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3