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

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

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

Имя: ____________________   Дата: ____________

1.Лёгкая

Чего бинарный поиск требует от входных данных?

  1. AМассив должен быть отсортирован
  2. BМассив должен содержать только положительные числа
  3. CДлина массива должна быть степенью двойки
  4. DВ массиве должно быть не более 1000 элементов
2.Лёгкая

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

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

Что означает f(n) = Θ(g(n))?

  1. Af растёт строго медленнее g
  2. Bf растёт с той же скоростью, что g, будучи ограниченной сверху и снизу постоянными кратными g
  3. Cf растёт строго быстрее g
  4. Df всегда меньше g при любом n, поэтому g ограничивает её сверху, но никогда не снизу
4.Средняя

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

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

Примерно сколько сравнений нужно бинарному поиску в худшем случае на отсортированном массиве из 1,000,000 элементов?

  1. AОколо 500,000
  2. BОколо 1,000
  3. CОколо 20
  4. DОколо 100
6.Средняя

Каково время работы поразрядной сортировки LSD для n целых чисел из d цифр в системе счисления с основанием k?

  1. AO(n²)
  2. BO(dn log k)
  3. CO(d(n + k))
  4. DO(n log n)
7.Сложная

Как соотносятся n! и 2ⁿ при больших n?

  1. An! растёт быстрее 2ⁿ
  2. Bn! есть O(n²)
  3. C2ⁿ растёт быстрее n!
  4. DОни растут с одинаковой скоростью
8.Сложная

Проблема остановки показывает, что:

  1. AКаждая программа в конце концов останавливается
  2. BНекоторые программы работают быстрее на более быстрых компьютерах, поэтому остановка зависит от оборудования
  3. CЦиклов следует избегать
  4. DНикакой алгоритм не может для каждой программы и входных данных определить, остановится ли она

Ответы

  1. 1. A · Массив должен быть отсортирован
  2. 2. B · O(n)
  3. 3. B · f растёт с той же скоростью, что g, будучи ограниченной сверху и снизу постоянными кратными g
  4. 4. D · На каждом шаге делает локально наилучший выбор
  5. 5. C · Около 20
  6. 6. C · O(d(n + k))
  7. 7. A · n! растёт быстрее 2ⁿ
  8. 8. D · Никакой алгоритм не может для каждой программы и входных данных определить, остановится ли она

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