Информатика • 10 класс
11

Двоичный поиск в отсортированном массиве (Python)

  • Принцип бинарного поиска:

1

Mas

[0]

Mas

[1]

Mas

[2]

Mas

[3]

Mas

[4]

Mas

[5]

Mas

[6]

Mas

[7]

Mas

[8]

Mas

[9]

left

 

 

 

mind

 

 

 

 

right

2

Mas

[0]

Mas

[1]

Mas

[2]

Mas

[3]

 

 

 

 

 

 

left

mind

 

right

 

 

 

 

 

 

3

 

 

Mas

[2]

Mas

[3]

 

 

 

 

 

 

 

 

left/

mind

right

 

 

 

 

 

 

Пример. Составьте программу двоичного поиска в отсортированном массиве

Программный код

Пояснение

boolstatus = False

Флаг: найден элемент или нет

l = 0
r = len (mas) 1

Левая/правая границы поиска

mid = 0

while (l <= r) and (boolstatus != True):
mid = (l + r) // 2

if mas [mid] == key: boolstatus = True

Проверка значения элемента, который находится в середине текущего массива

if mas [mid] > key: r = mid - 1
else: l = mid + 1

Выбор левой/правой половины массива для дальнейшей работы алгоритма

Было полезно?

Рекомендуем

Вы учитель или ученик?
Познакомьтесь с нашим образовательным онлайн-сервисом с тысячами интерактивных работ
Учителю
Удобно проводить уроки в классе, назначать работы на дом и анализировать результаты всего класса или конкретных учеников
Ученику
Самостоятельно изучать новые и повторять пройденные темы, готовиться по индивидуальной траектории и оценивать результаты на наглядных графиках
Зарегистрироваться в «Облаке знаний»
Логотип облако знаний
+7 (499) 322-07-57
info@oblakoz.ru

Контактный центр

МО, г. Долгопрудный,
Лихачевский проезд, 4, стр. 1

Отдел заботы о пользователях

Политика конфиденциальности

© ООО «Физикон Лаб», 2026

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪