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

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

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

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

1.Легка

Що описує час виконання алгоритму в найгіршому випадку?

  1. AМаксимальний час на всіх вхідних даних розміру n
  2. BЧас на повільному комп'ютері
  3. CЧас на найменших вхідних даних
  4. DОчікуваний час на випадкових вхідних даних розміру n
2.Легка

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

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

Цикл починається з i = 1 і подвоює i на кожній ітерації, доки i > n. Скільки ітерацій він виконує?

  1. AБлизько n / 2
  2. BБлизько log₂ n
  3. CБлизько n
  4. DБлизько n²
4.Середня

Яка амортизована часова складність додавання елемента в кінець динамічного масиву, який подвоює свою місткість у разі заповнення?

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

Скільки рівнів має рекурсія сортування злиттям для масиву з n елементів?

  1. AБлизько n
  2. BБлизько log₂ n
  3. CБлизько √n
  4. DБлизько n / 2
6.Середня

Чому динамічне програмування не дає реального пришвидшення для сортування злиттям?

  1. AСортування злиттям не має рекурсивної структури
  2. BДинамічне програмування працює лише на задачах про графи, а не на масивах
  3. CЙого підзадачі не перекриваються, тож нічого використати повторно
  4. DСортування злиттям уже має складність O(n)
7.Складна

Топологічне сортування можливе лише для:

  1. AПовних графів
  2. BГрафів із від'ємними вагами
  3. CОрієнтованих ациклічних графів
  4. DНеорієнтованих графів
8.Складна

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

  1. AЗавжди мінімальне вершинне покриття
  2. BЩонайбільше в log n разів більше за мінімум
  3. CНевідомої якості порівняно з оптимумом
  4. DЩонайбільше вдвічі більше за мінімальне вершинне покриття

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

  1. 1. A · Максимальний час на всіх вхідних даних розміру n
  2. 2. B · Її час виконання не зростає з розміром вхідних даних
  3. 3. B · Близько log₂ n
  4. 4. B · O(1)
  5. 5. B · Близько log₂ n
  6. 6. C · Його підзадачі не перекриваються, тож нічого використати повторно
  7. 7. C · Орієнтованих ациклічних графів
  8. 8. D · Щонайбільше вдвічі більше за мінімальне вершинне покриття

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