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

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

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

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

1.Легка

Що таке мемоізація?

  1. AЗбереження результатів викликів функції, щоб повторні виклики отримували відповідь із пам'яті
  2. BЗвільнення пам'яті після повернення з функції
  3. CНаписання коментарів біля кожного рядка коду
  4. DАвтоматичне перетворення рекурсії на рівносильний цикл, щоб стек викликів не був потрібен
2.Легка

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

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

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

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

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

  1. AБлизько 500,000
  2. BБлизько 100
  3. CБлизько 1,000
  4. DБлизько 20
5.Середня

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

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

Що означає, що задача має оптимальну підструктуру?

  1. AУсі підзадачі мають однаковий розмір
  2. BЗадача має рівно один оптимальний розв'язок, спільний для кожної підзадачі
  3. CОптимальний розв'язок можна побудувати з оптимальних розв'язків її підзадач
  4. DЗадачу можна розв'язати за сталий час
7.Складна

Сортування вставками працює за O(n) на відсортованих даних. Чи суперечить це нижній межі Ω(n log n) для сортування порівняннями?

  1. AНі, бо сортування вставками не є сортуванням порівняннями
  2. BТак, але лише для масивів, коротших за 100
  3. CТак, отже, нижня межа хибна
  4. DНі, нижня межа стосується найгіршого випадку серед усіх вхідних даних, а не кожних вхідних даних
8.Складна

Яка амортизована вартість інкременту двійкового лічильника, якщо один інкремент може змінити багато бітів?

  1. AO(n) на інкремент
  2. BO(log n) на інкремент
  3. CO(1) на інкремент
  4. DO(n log n) на інкремент

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

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

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