Урок:

Поняття складності алгоритмів 9 клас

10.03.2025
1 0
Вміст уроку:
1
2
3
4
5
6
7

Урок не містить жодного завдання. Додайте завдання.

Щоб додати завдання, оберіть категорію завдання на панелі запитань.

1

. Теоретична частина

Складність алгоритму – це оцінка того, скільки ресурсів (часу або пам’яті) потрібно для його виконання залежно від розміру вхідних даних.

Види складності:

📌 Часова складність – скільки операцій виконується залежно від розміру вхідних даних (n).
📌 Просторова складність – скільки пам’яті споживає алгоритм.

2

Нотація "О" (О-нотація, Big-O Notation)

Оцінює, як швидко збільшується кількість операцій при зростанні n.

🔹 O(1) – алгоритм працює за сталий час (наприклад, доступ до елемента списку).
🔹 O(log n) – логарифмічний ріст (наприклад, бінарний пошук).
🔹 O(n) – лінійна складність (наприклад, простий перебір списку).
🔹 O(n²) – квадратична складність (наприклад, подвійний цикл).
🔹 O(2ⁿ) – експоненційна складність (дуже повільний алгоритм).

3

2 з 12 балів

. Практична частина

Завдання 1: Вимірюємо час виконання алгоритмів

📌 Перевіримо, як змінюється час виконання алгоритму залежно від розміру даних.

08009zsb-7d3a-682x405.png🔎 Аналізуємо результат:
✅ Якщо список містить 10 елементів – швидко.
✅ Якщо список містить 1 000 000 елементів – значно довше.
✅ Це показує, що алгоритм O(n) працює повільніше на великих наборах даних.

4

2.5 з 12 балів

Завдання 2: Порівнюємо два алгоритми сортування

📌 Порівняємо "бульбашкове сортування" (O(n²)) і вбудовану функцію Python (O(n log n)).
08009zw2-689f-940x481.pngПояснення роботи коду:

1️⃣ Генеруємо список із 500 випадкових чисел.
2️⃣ Сортуємо його двома різними способами:

  • Бульбашковим сортуванням (повільний метод O(n²))

  • Вбудованим методом Python (ефективний O(n log n))
    3️⃣ Порівнюємо час виконання обох алгоритмів.

💡 Очікуваний результат:
🔹 Бульбашкове сортування набагато повільніше, особливо якщо збільшити розмір списку.
🔹 Сортування Python працює швидко навіть для великих масивів.

5

2.5 з 12 балів

Завдання 3: Оптимізація алгоритму пошуку

📌 Використаємо бінарний пошук (O(log n)), який значно швидший за лінійний (O(n)).

Завдання 3: Порівняння лінійного та бінарного пошуку

📌 Мета:

  • Перевірити, який пошук працює швидше: лінійний (O(n)) чи бінарний (O(log n)).

  • Зрозуміти, що бінарний пошук можна застосовувати лише на відсортованих масивах.

    08009zwx-a9ce-862x740.pngПояснення роботи коду:

    1️⃣ Лінійний пошук (O(n)) проходить кожен елемент списку поки не знайде потрібний.
    2️⃣ Бінарний пошук (O(log n)) працює набагато швидше:

    • Ділить список навпіл і перевіряє середній елемент.

    • Якщо число більше – шукає в правій половині.

    • Якщо число менше – шукає в лівій половині.
      3️⃣ Результати показують, що бінарний пошук в сотні разів швидший за лінійний!

6

Очікуваний результат:

⏳ Лінійний пошук (O(n)) – значно довший, особливо на великих масивах.
⚡ Бінарний пошук (O(log n)) – миттєвий результат, навіть при 1 000 000 елементах.

7

5 з 12 балів

Домашнє завдання

1️⃣ Модифікуйте програму:

  • Додайте новий алгоритм сортування (наприклад, "вставками").
    2️⃣ Напишіть власний алгоритм з O(1) (наприклад, отримання елемента за індексом).

🚀 Чим краще алгоритм – тим швидше працює програма! Вчимося вибирати ефективні рішення! 😉

Рефлексія від 0 учнів

Сподобався:

0

Так: 0

Ні: 0

Зрозумілий:

0

Так: 0

Ні: 0

Потрібні роз'яснення:

0

Ні: 0

Так: 0

Рекомендуємо

Поняття складності алгоритмів

Поняття складності алгоритмів

302

Аватар профіля Лизько Валентина Степанівна
Інформатика
9 клас

35 грн

ГР1 Поняття складності алгоритмів

ГР1 Поняття складності алгоритмів

225

Аватар профіля Лизько Валентина Степанівна
Інформатика
8 клас

35 грн

Практична робота № 2 «Хмарні сервіси»

Практична робота № 2 «Хмарні сервіси»

139

Аватар профіля Кутенський Василь Григорович
Інформатика
7 клас

50 грн

Розумні пристрої і рóботи

Розумні пристрої і рóботи

100

Аватар профіля Кутенський Василь Григорович
Інформатика
4 клас

50 грн

Сайти, розміщення інформації на сайтах. Навігація по сайтах. Пошукові системи, їхнє призначення.

Сайти, розміщення інформації на сайтах. Навігація по сайтах. Пошукові системи, їхнє призначення.

265

Аватар профіля Кутенський Василь Григорович
Інформатика
5 клас

83 грн

Тема: Операційна система та її інтерфейс

Тема: Операційна система та її інтерфейс

119

Аватар профіля Кутенський Василь Григорович
Інформатика
5 клас

83 грн

Схожі уроки

Впорядкування, пошук і фільтрування даних.

Впорядкування, пошук і фільтрування даних.

1365

Аватар профіля Вожга Ірина Леонідівна
Інформатика
9 клас

Створення й уведення структури таблиць. Поняття таблиці, поля, запису. Створення таблиць, означення полів і ключів у середовищі СКБД. Властивості полів, типи даних.

Створення й уведення структури таблиць. Поняття таблиці, поля, запису. Створення таблиць, означення полів і ключів у середовищі СКБД. Властивості полів, типи даних.

1223

Аватар профіля Савка-Ржематорська Оксана Василівна
Інформатика
9 клас

Цикли з передумовою у вкладених циклах

Цикли з передумовою у вкладених циклах

1418

Аватар профіля Вожга Ірина Леонідівна
Інформатика
6 клас

Налаштування часових параметрів аудіо- та відеоряду.

Налаштування часових параметрів аудіо- та відеоряду.

550

Аватар профіля Солодовнікова Катерина Олексіївна
Інформатика
8 клас

Елемент керування «кнопка». Поняття об’єкту та його властивостей і методів (на прикладі елементів екранної форми). Властивості і методи елементів керування.

Елемент керування «кнопка». Поняття об’єкту та його властивостей і методів (на прикладі елементів екранної форми). Властивості і методи елементів керування.

709

Аватар профіля Пилипенко Олена Володимирівна
Інформатика
8 клас

Елемент керування кнопка

Елемент керування кнопка

351

Аватар профіля Пилипенко Олена Володимирівна
Інформатика
8 клас
✖
↑