Алгоритмы и сложность: лист заданий с ответами

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

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

Имя: ____________________   Дата: ____________

1.Лёгкая

Алгоритм O(n²) работает 1 секунду при n = 1000. Примерно сколько он будет работать при n = 2000?

  1. A8 секунд
  2. B4 секунды
  3. C2 секунды
  4. D1 секунду
2.Лёгкая

Какова временная сложность линейного поиска в неотсортированном массиве из n элементов (в худшем случае)?

  1. AO(log n)
  2. BO(1)
  3. CO(n²)
  4. DO(n)
3.Лёгкая

Какой класс сложности растёт быстрее всех при больших n?

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

Жадный алгоритм:

  1. AИспользует только рекурсию
  2. BНа каждом шаге делает локально наилучший выбор
  3. CВсегда даёт оптимальное решение
  4. DПеребирает все возможные решения
5.Средняя

Какова временна́я сложность умножения двух матриц n × n стандартным тройным циклом?

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

При монетах 1, 3 и 4 и сумме 6 сколько монет использует жадный метод «сначала самая крупная монета» по сравнению с оптимумом?

  1. AЖадный метод использует 4 монеты; оптимум — 3
  2. BЖадный метод использует 3 монеты; оптимум — 3
  3. CЖадный метод использует 2 монеты; оптимум — 2
  4. DЖадный метод использует 3 монеты; оптимум — 2
7.Сложная

Какова временная сложность построения двоичной кучи из n неотсортированных элементов восходящим методом (bottom-up)?

  1. AO(n)
  2. BO(log n)
  3. CO(n log n)
  4. DO(n²)
8.Сложная

Что нужно сделать, чтобы показать, что новая задача X NP-трудна?

  1. AПоказать, что у X нет полиномиального алгоритма для малых входов
  2. BСвести известную NP-трудную задачу к X за полиномиальное время
  3. CСвести X к известной NP-трудной задаче за полиномиальное время
  4. DПоказать, что X можно проверить за полиномиальное время

Ответы

  1. 1. B · 4 секунды
  2. 2. D · O(n)
  3. 3. D · O(2ⁿ)
  4. 4. B · На каждом шаге делает локально наилучший выбор
  5. 5. A · O(n³)
  6. 6. D · Жадный метод использует 3 монеты; оптимум — 2
  7. 7. A · O(n)
  8. 8. B · Свести известную NP-трудную задачу к X за полиномиальное время

Полные пошаговые решения: занимайтесь этой темой на examproblems.com.