Робочий аркуш «Алгоритми та складність» з відповідями

Безкоштовний робочий аркуш для друку «Алгоритми та складність»: 8 задач від легких до рівня іспиту, з ключем відповідей. Роздрукуйте його або збережіть як PDF.

Для викладачів: можна безкоштовно друкувати, копіювати й використовувати на заняттях. Кожен новий аркуш має нові значення і власні відповіді. Будемо вдячні за посилання на ExamProblems на сторінці вашого курсу.

Ім’я: ____________________   Дата: ____________

1.Легка

Що означає, що операція виконується за час O(1)?

  1. AВона обробляє рівно один елемент за секунду часу виконання
  2. BЇї час виконання не зростає з розміром вхідних даних
  3. CЇї можна виконати лише один раз
  4. DВона завжди триває рівно одну секунду
2.Легка

Який алгоритм сортування обирає опорний елемент і розбиває масив на менші й більші елементи?

  1. AСортування вставками
  2. BСортування злиттям
  3. CШвидке сортування (quicksort)
  4. DСортування бульбашкою
3.Легка

Які три кроки алгоритму «розділяй і володарюй»?

  1. AРозділити, підкорити, об'єднати
  2. BВгадати, перевірити, повторити
  3. CВідсортувати, знайти, повернути
  4. DПрочитати, обчислити, записати
4.Середня

Яка часова складність обчислення n-го числа Фібоначчі за допомогою таблиці знизу вгору?

  1. AO(n²)
  2. BO(n)
  3. CO(2ⁿ)
  4. DO(log n)
5.Середня

Як алгоритм Прима будує мінімальне кістякове дерево?

  1. AВін вирощує одне дерево від початкової вершини, додаючи найдешевше ребро, що виходить із дерева
  2. BВін видаляє найдорожче ребро, доки не залишиться циклів
  3. CВін сортує всі ребра за вагою й додає кожне, окрім тих, що утворили б цикл у лісі
  4. DВін запускає пошук у ширину й зберігає дерево BFS
6.Середня

Нижня межа для сортування на основі порівнянь у найгіршому випадку становить:

  1. AΩ(log n)
  2. BΩ(n²)
  3. CΩ(n)
  4. DΩ(n log n)
7.Складна

Множення Карацуби задовольняє T(n) = 3T(n/2) + O(n). Який розв'язок?

  1. AΘ(nlog₂ 3), близько n1,585
  2. BΘ(n²)
  3. CΘ(n log n)
  4. DΘ(n3)
8.Складна

Алгоритм Штрассена множить матриці, використовуючи 7 замість 8 рекурсивних множень блоків половинного розміру. Який його час виконання?

  1. AΘ(n2)
  2. BΘ(n² log n)
  3. CΘ(nlog₂ 7), близько n2,81
  4. DΘ(n³)

Ключ відповідей

  1. 1. B · Її час виконання не зростає з розміром вхідних даних
  2. 2. C · Швидке сортування (quicksort)
  3. 3. A · Розділити, підкорити, об'єднати
  4. 4. B · O(n)
  5. 5. A · Він вирощує одне дерево від початкової вершини, додаючи найдешевше ребро, що виходить із дерева
  6. 6. D · Ω(n log n)
  7. 7. A · Θ(nlog₂ 3), близько n1,585
  8. 8. C · Θ(nlog₂ 7), близько n2,81

Повні покрокові розв’язки: тренуйте цю тему на examproblems.com.