• Как работает код из книги "Грокаем алгоритмы"?

    pavloops
    @pavloops
    я не волшебник, я только учусь
    def binary_search ( list, item) :
        # в low и high хранятся границы части списка, где выполняется поиск
        low = 0
        high = len(list)-1
        i = 0
      # Пока не останется один элемент
        while low <= high:
            # Проверяем средний элемент
            mid = (low + high)//2
            guess = list[mid]
            # Значение найдено
            if guess == item:
                return mid
            # Значение велико
            if guess > item:
                high = mid - 1
            # Значение мало
            else:
                low = mid + 1
        # Значение не найдено
        return None
    Ответ написан
    Комментировать