仕事をやり遂げるために必要な時間を見立てることが出来たら、次はその時間をいかに短縮するかを考えます。同じ仕事が短時間で出来るなら、それにこしたことはありません。余った時間で間違いがないかどうかの確認や、より品質を高めることが出来ます。 前回は、計算量O (n )のアルゴリズムの例としてリニアサーチを取り上げました。要素の数nの大きさに比例して、最悪検索時間が長くなります。今回は、リニアサーチよりも高速なバイナリサーチの計算量を求め、実際にコードを動かして速さの違いを実感しましょう。本当に同じ仕事を、より短い時間で実行できるのでしょうか。 図75.1 同じ品質ならより速く 計算量:バイナリサーチの場合O (log2(n)) バイナリサーチ[1]とは、データの真ん中の値、すなわち中央値[2]を「とりあえず」チェックする方法です。データは整列済みで、小さい値から大きい値の順に並んでいます。目的の