ПочатиПочніть безкоштовно

Реалізація бінарного пошуку

У цьому відео ви дізналися, як реалізувати лінійний пошук і бінарний пошук, а також побачили різницю між ними.

У цій вправі вам потрібно реалізувати функцію binary_search(). Чи впораєтеся?

Ця вправа є частиною курсу

Структури даних і алгоритми в Python

Переглянути курс

Інструкції до вправи

  • Перевірте, чи дорівнює значення пошуку значенню посередині.
  • Перевірте, чи є значення пошуку меншим за значення посередині.
  • Присвойте last значення middle мінус один.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

def binary_search(ordered_list, search_value):
  first = 0
  last = len(ordered_list) - 1
  
  while first <= last:
    middle = (first + last)//2
    # Check whether the search value equals the value in the middle
    if ____ == ____:
      return True
    # Check whether the search value is smaller than the value in the middle
    elif ____ < ____:
      # Set last to the value of middle minus one
      ____
    else:
      first = middle + 1
  return False
  
print(binary_search([1,5,8,9,15,20,70,72], 5))
Редагувати та запускати код