/
ZenOwl
/
PythonBase
Обзор
Документация
Войти
/
ZenOwl
/
PythonBase
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
algorythms.py
21 строка
990 B
DESKTOP-6K0BI6G\admin
База по Python.Старт. Файл алгоритмов. Добавлен Бинарный поиск
23 мар 2025, 22:41
23 мар 2025, 22:41
6f46ee9
Код
Авторство
О чём код?
#Сборник алогиртмов по книге А. Бхаргава Грокаем алогоритмы #Бинарный поиск - получает отсортированный список элементов и искомое число, #а возвращает позицию этого числа в списке или Null если число не найдено #В бинарном поиске каждый раз исключается половина списка def binary_search(list, item): low = 0 high = len(list) - 1 while low <= high: mid = int((low + high) / 2) guess = list[mid] if guess == item: return mid if guess > item: high = mid - 1 else: low = mid + 1 return None list = [1, 3, 5, 7, 9,12, 15,18,21,23,25,27,30] print(binary_search(list, 21)) #=> 8 - позиция элемента print(binary_search(list, 100))#=> None - число не найдено