кодесурса
«Python

Структуры и алгоритмы данных Python: поиск упорядоченного списка

script1adsense2code
script1adsense3code

Поиск и сортировка в Python: упражнение-3 с решением

Напишите программу на Python для бинарного поиска упорядоченного списка.

Пример решения : -

Код Python:

def Ordered_binary_Search(olist, item):
    
    if len(olist) == 0:
        return False
    else:
        midpoint = len(olist) // 2
        if olist[midpoint] == item:
            return True
        else:
            if item < olist[midpoint]:
                return binarySearch(olist[:midpoint], item)
            else:
                return binarySearch(olist[midpoint+1:], item)
def binarySearch(alist, item):
    first = 0
    last = len(alist) - 1
    found = False
    while first <= last and not found:
        midpoint = (first + last) // 2
        if alist[midpoint] == item:
            found = True
        else:
            if item < alist[midpoint]:
                last = midpoint - 1
            else:
                first = midpoint + 1
    return found
print(Ordered_binary_Search([0, 1, 3, 8, 14, 18, 19, 34, 52], 3))
print(Ordered_binary_Search([0, 1, 3, 8, 14, 18, 19, 34, 52], 17))

Пример вывода:

 Правда                                                                                                          
Ложь

Блок - схема:

«Блок-схема:

Редактор кода Python:

Внесите свой код и комментарии через Disqus.

Previous: написать программу на Python для последовательного поиска.
Далее: Напишите программу на Python для сортировки списка элементов с использованием алгоритма пузырьковой сортировки.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code