解説
アルゴリズムの良し悪しは「どれだけ速いか」で決まり、それを表すのが計算量です。実際に比較した回数を数えて差を体感しましょう。
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 なら、書いたコードを保存して業務の自動化まで進められます。学習センターはずっと無料です。