Vilibb
@Vilibb
Пытаюсь изучить какой-либо ЯП.

Как написать алгоритм для двоичного поиска по массиву с числами на си?

Хочу сам, неподглядывая, написать алгоритм, но не могу понять, как получить индексы массива. Т.е. вот у нас есть массив, его размер 500 ячеек, мы берем 250ую ячейку, выясняем, что искомое значение находится правее. Соответственно область поиска теперь от 250 до 500, а размер второй половины - 250. Можно скопирорвать вторую половину массива в другой массив и тогда индексы будут начинаться с нуля, но тогда какой смысл в бинарном поиске?
Натолкните меня на мысль пожалуйста. Как мне получить верные индексы массива?
  • Вопрос задан
  • 183 просмотра
Решения вопроса 2
@MiiNiPaa
Что значит верные? Вам нужен индекс посередине новой области поиска? начало + (конец - начало)/2, примитивная математика.
Ответ написан
Комментировать
Введите две переменные - начало и конец текущей области поиска и временно забудьте об оставшихся отрезках массива вне этой области.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы