September 16, 2019

Алгоритмы поиска - Python

Алгоритмы поиска значений.

Бинарный поиск

bin_nums = [-5, -3, -3, 0, 1, 4, 45, 78, 78, 90]

def bin_search(nums, value):
    start = 0
    end = len(nums) - 1
    
    while start <= end:
        mid = (start + end) // 2
        
        if nums[mid] == value:
            return mid
        elif nums[mid] < value:
            start = mid + 1
        elif nums[mid] > value:
            end = mid - 1
    return False

print(bin_search(bin_nums, 90))

Ответ:

9