10
правок
Изменения
Нет описания правки
Это разделение помогает находить количество подряд идущих равных значений.
<b><i>Например:</i></b> <br>
Задан отсортированный массив <tex>[1, 2, 2, 2, 2, 3, 5, 8, 9, 11]</tex>
== Код ==
<pre>binSearch(l, r) // l, r - левая и правая границы while l < r - 1 // запускаем цикл m = (l + r) / 2; // m - середина области поиска
if a[m] < k
l = m;
else
r = m; // сужение границ
</pre>
В случае правостороннего поиска изменится знак сравнения при сужении границ на (<tex>a[m] \leqslant k</tex>).