Урок:

Поняття складності алгоритмів 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

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

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

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

279

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

35 грн

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

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

182

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

35 грн

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

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

93

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

50 грн

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

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

64

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

50 грн

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

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

78

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

83 грн

Офісні вебдодатки. Використання інтернет-середовищ для створення та публікації спільних документів різних видів. Рівні доступу. ГР2

Офісні вебдодатки. Використання інтернет-середовищ для створення та публікації спільних документів різних видів. Рівні доступу. ГР2

169

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

50 грн

Схожі уроки

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

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

1289

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

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

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

1110

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

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

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

1344

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

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

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

497

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

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

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

652

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

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

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

281

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