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

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

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

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

1.Легка

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

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

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

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

Що таке алгоритм повного перебору?

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

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

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

Який алгоритм знаходить найкоротші шляхи з одного джерела в графі з невід'ємними вагами ребер?

  1. AАлгоритм Краскала
  2. BПошук у глибину (DFS)
  3. CАлгоритм Дейкстри
  4. DУ всіх випадках потрібен алгоритм Беллмана–Форда
6.Середня

Що обчислює алгоритм Флойда–Воршелла і як швидко?

  1. AНайкоротші шляхи між усіма парами вершин за O(V³)
  2. BМінімальне кістякове дерево за O(E log V)
  3. CТопологічний порядок за O(V²)
  4. DНайкоротші шляхи від однієї початкової вершини до всіх інших за O(V + E)
7.Складна

Яке твердження про позначення «мале o» правильне?

  1. An² = o(n)
  2. Bn = o(n²), але n не є o(n)
  3. Cn = o(n), бо кожна функція є «мале o» від самої себе
  4. D2n = o(n), бо 2n зростає повільно
8.Складна

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

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

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

  1. 1. D · Швидке сортування (quicksort)
  2. 2. B · Розділити, підкорити, об'єднати
  3. 3. B · Алгоритм, що перебирає всі можливі кандидати на розв'язок
  4. 4. D · Близько log₂ n
  5. 5. C · Алгоритм Дейкстри
  6. 6. A · Найкоротші шляхи між усіма парами вершин за O(V³)
  7. 7. B · n = o(n²), але n не є o(n)
  8. 8. B · Щонайбільше вдвічі більше за мінімальне вершинне покриття

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