Перейти к содержимому
Задача · Алгоритмы и сложность · урок 7 из 9

Задача: бинарный поиск

Напишите функцию int find_index(const std::vector<int>& sorted, int value). Вектор sorted упорядочен по возрастанию, а функция возвращает индекс элемента, равного value, или -1, если такого элемента нет. Поиск должен делать O(log n) сравнений.

  • find_index({1, 3, 5, 7, 9}, 7) → 3
  • find_index({1, 3, 5, 7, 9}, 4) → -1
  • find_index({}, 5) → -1

Ограничения: значения в sorted — различные числа типа int, в том числе отрицательные, а сам вектор может быть пустым. value может быть меньше первого элемента или больше последнего.

find_index.cpp — cpp
cpp · строк: 6
Ctrl+Enter запуск · Esc выйти из редактора