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

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

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

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

1.Легка

Який із цих часів виконання є поліноміальним?

  1. AO(n³)
  2. BO(n!)
  3. CO(nⁿ)
  4. DO(2ⁿ)
2.Легка

Що таке рекурсія?

  1. AФункція, яка викликає саму себе для менших вхідних даних
  2. BЦикл, який ніколи не закінчується
  3. CМетод сортування
  4. DТип структури даних
3.Легка

Алгоритм O(n) працює 3 секунди для n = 1 мільйон. Приблизно скільки він працюватиме для n = 2 мільйони?

  1. A9 секунд
  2. B6 секунд
  3. C12 секунд
  4. D3 секунди
4.Середня

Яка часова складність множення двох матриць n × n стандартним потрійним циклом?

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

Який розв'язок рекурентного співвідношення T(n) = 2T(n − 1) + O(1)?

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

Яке твердження про рекурсивну функцію без досяжного базового випадку правильне?

  1. AВона автоматично повертає 0
  2. BКомпілятор завжди перетворює її на цикл, що безпечно завершується
  3. CВона викликає себе, доки не переповниться стек викликів
  4. DВона виконується за час O(1)
7.Складна

За основною теоремою (master theorem) розв'язком T(n) = 8T(n/2) + O(n²) є:

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

Що випливало б, якби хтось знайшов поліноміальний алгоритм для однієї NP-повної задачі?

  1. AЛише ця одна задача перейшла б до P
  2. BУсі алгоритми з експоненційним часом негайно стали б працювати за лінійний час
  3. CКожну задачу з NP можна було б розв'язати за поліноміальний час, тож P = NP
  4. DПроблема зупинки стала б розв'язною

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

  1. 1. A · O(n³)
  2. 2. A · Функція, яка викликає саму себе для менших вхідних даних
  3. 3. B · 6 секунд
  4. 4. A · O(n³)
  5. 5. C · O(2ⁿ)
  6. 6. C · Вона викликає себе, доки не переповниться стек викликів
  7. 7. A · Θ(n³)
  8. 8. C · Кожну задачу з NP можна було б розв'язати за поліноміальний час, тож P = NP

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