BinarySearch

Ищет указанное значение в отсортированном по возрастанию списке.

Версия для поиска по заданному диапазону значений и с использованием класса, реализующего интерфейс IComparable<T> для сравнения элементов.

int BinarySearch(
   const int      index,       // начальный индекс
   const int      count,       // диапазон поиска
   T              item,        // искомое значение
   IComparer<T>*  comparer     // интерфейс для сравнения
   );

Версия для поиска с использованием класса, реализующего интерфейс IComparable<T> для сравнения элементов.

int BinarySearch(
   T              item,        // искомое значение
   IComparer<T>*  comparer     // интерфейс для сравнения
   );

Версия для поиска с использованием глобального метода ::Compare для сравнения элементов.

int BinarySearch(
    item                     // искомое значение
   );

Параметры

index

[in]  Начальный индекс, с которого начинается поиск.

count

[in]  Длина диапазона поиска.

item

[in]  Искомое значение.

*comparer

[in]  Интерфейс для сравнения элементов.

Возвращаемое значение

Возвращает индекс найденного элемента. Если искомое значение не найдено, то возвращает индекс меньшего элемента, которое ближе всех по значению.