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

Порівняйте досвід онлайн‑покупок

Відчуйте на практиці силу ефективності алгоритмів! Запустіть наданий код і порівняйте продуктивність чотирьох різних алгоритмів (bubble sort і лінійного пошуку, а також quick sort і бінарного пошуку).

Кодувати не потрібно. Змініть лише параметр і подивіться, як алгоритми працюють за різних умов. Змініть параметр угорі з назвою num_items. (Цей параметр моделює, скільки товарів у каталозі інтернет‑крамниці).

Запустіть код, порівняйте результати й зверніть увагу: коли збільшуємо з 1000 до 10000, наскільки довше виконується один варіант порівняно з іншим.

Уявіть, наскільки кращим (тобто швидшим) був би ваш досвід із однією з цих пар алгоритмів порівняно з іншою, якщо потрібно відсортувати список товарів за ціною на сайті електронної комерції.

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

Концепції комп'ютерних наук

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

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

  • Задайте будь‑яке значення для num_items, щоб виконати порівняння. (напр.: уявімо, що на www.amazon.com є 1 000 товарів, тоді встановіть num_items = 1000).

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

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

# Change this parameter
num_items = 1000

####### Leave the code below this line alone ########
catalog = [random.randint(0, num_items) for _ in range(num_items)]
total_time_bubble_linear = time_bubble_sort_and_linear_search(catalog)
catalog = [random.randint(0, num_items) for _ in range(num_items)]
total_time_quick_binary = time_quick_sort_and_binary_search(catalog)

df = pd.DataFrame({"Method": ["Bubble Sort + Linear Search", "Quick Sort + Binary Search"],
                   "Total Time (seconds)": [total_time_bubble_linear, total_time_quick_binary]})
print(df)
Редагувати та запускати код