バイナリ検索
私たちは、検索の順序付きリストを達成するために非常に便利です。最初の要素は、私たちが探しているものでない場合に見つけるために、我々は最初の要素と比較したときに、最大がある
n-1
要素を比較する必要があるが。バイナリサーチは、中央要素から始めるのではなく、順番にリストを見つけることです。要素は、我々が探している要素であるならば、我々は外観を完了しました。そうでない場合、我々は、プロパティの順序付きリストを使用して半分の残りの要素を排除することができます。私たちが探している要素は、真中の要素よりも大きい場合は、中間要素を排除することができますし、中央の要素は半分要素よりも小さくなっています。確かに、リスト内の要素、その半分の大部分の場合。その後、我々は、大きなプロセスの半分を繰り返し、我々はコンテンツの探しているものと比較すること、中央の要素からスタートし続けることができます。
1 "" " 2 バイナリ検索: 3 順序付けられたリストまたはコレクションのために、 4 見出さリターン指数; 5 。見つかりません-1を返す 。6 " "" 7。 8。 9。 DEFのbinary_searc(sorted_list、項目): 10 低= 0 11 高= LEN(sorted_list) 12は ミドル=(ハイ+低)// 2 13であり ながら低<= 高: 14 IF sorted_list [ミドル] < アイテム: 15 。低ミドル+ 1 = 16 のelif sorted_list [ミドル]> アイテム: 17 。=中高- 1 18は、 他: 19。 リターン中東 20である 中東=(高+低)2 // 21で 返す -1 #を見つけることができません-1
ハッシュのルックアップ