#18

探索の比較回数(計算量の体感)

同じ値を探す比較回数を数え、線形と二分の差を数字で体感します。

解説

アルゴリズムの良し悪しは「どれだけ速いか」で決まり、それを表すのが計算量です。実際に比較した回数を数えて差を体感しましょう。 1〜100の100個から97を探します。 - 線形探索:先頭から数えるので97回比較します。最悪 n 回(O(n))。 - 二分探索:範囲を半分ずつ絞るので数回で到達します。約 log2(n) 回(O(log n))。 データが増えるほど差は劇的に開きます。100万個なら線形は約100万回、二分はたった約20回です。

書き方

計算量を「比較回数」で体感する。
・カウンタ変数を1ずつ増やして比較回数を数える。
・list(range(1, 101)) で 1〜100 のリストを作る。
・O(n)(線形)と O(log n)(二分)の差を数値で比較。

書いて動かす

この回の課題

1〜100 から 97 を線形探索と二分探索で探し、それぞれの比較回数を数えて差を見てみよう。

コードはあなたの端末の中だけで動きます(サーバーには送られません)。進み具合もこのブラウザに保存されます。

もっと本格的に使うなら

Windows版 InsightPy なら、書いたコードを保存して業務の自動化まで進められます。学習センターはずっと無料です。