> k
i. Якщо
k i = key, то потрібна запис знайдена. Якщо
k i < i>> key, то
key повинен знаходитися в частині масиву, попередньої
k i, і якщо
k < i> i то в другій частині . Тепер для пошуку потрібного елемента досить розглядати половину масиву з ключами
k 1 , ...., k i або
k i , ...., k N. Повторюючи цю процедуру, після кожного невдалого порівняння
key з
k i будемо виключати приблизно половину непереглянутих частини. Це і представляє суть
двійкового (бінарного) пошуку, алгоритм якого можна записати наступним чином: span>
Algorithm BSEARCH [Бінарний пошук.]
Крок B 0. [Ініціалізація. ] First: = 1; Last: = N;
{First, Last - покажчики першого і останнього ключів. }
Крок B 1. [Основний цикл. ] While Last Ві First do
Крок B 2. [Визначення центрального ключа.] i: = (Fist + Last) div 2;
Крок B 3. [Перевірка.] if key = k i then Stop;
Крок B