Робочий аркуш «Алгоритми та складність» з відповідями
Безкоштовний робочий аркуш для друку «Алгоритми та складність»: 8 задач від легких до рівня іспиту, з ключем відповідей. Роздрукуйте його або збережіть як PDF.
Для викладачів: можна безкоштовно друкувати, копіювати й використовувати на заняттях. Кожен новий аркуш має нові значення і власні відповіді. Будемо вдячні за посилання на ExamProblems на сторінці вашого курсу.
Ім’я: ____________________ Дата: ____________
1.Легка
Просторова складність вимірює:
- AКількість рядків коду
- BМісце на диску, яке займає файл програми після компіляції
- CОбсяг пам'яті, потрібний алгоритму зі зростанням вхідних даних
- DФізичний розмір комп'ютера
2.Легка
Цикл починається з i = 1 і подвоює i на кожній ітерації, доки i > n. Скільки ітерацій він виконує?
- AБлизько n / 2
- BБлизько n
- CБлизько log₂ n
- DБлизько n²
3.Легка
Що описує час виконання в середньому випадку?
- AЧас для вхідних даних середньої довжини
- BСереднє значення між часами виконання в найкращому й найгіршому випадках
- CОчікуваний час за заданого розподілу вхідних даних розміру n
- DЧас на найпоширенішому комп'ютері
4.Середня
Маючи монети номіналом 1, 3 і 4 та суму 6, скільки монет використовує жадібний метод «спершу найбільша монета» порівняно з оптимумом?
- AЖадібний використовує 2 монети; оптимум — 2
- BЖадібний використовує 3 монети; оптимум — 2
- CЖадібний використовує 4 монети; оптимум — 3
- DЖадібний використовує 3 монети; оптимум — 3
5.Середня
Чи правильно казати, що алгоритм O(n²) є також O(n³)?
- AНі, бо «велике O» завжди має вказувати точну швидкість зростання функції
- BНі, бо для великих n n³ менше за n²
- CТак, бо «велике O» — верхня межа, а n² зростає не швидше, ніж n³
- DТак, але лише якщо n менше за 100
6.Середня
Яка часова складність алгоритму Беллмана–Форда на графі з V вершинами та E ребрами?
- AO(V × E)
- BO(V³ × E)
- CO(E log V)
- DO(V + E)
7.Складна
Як алгоритм Беллмана–Форда виявляє цикл від'ємної ваги, досяжний із джерела?
- AВін двічі запускає алгоритм Дейкстри й порівнює два результати відстаней
- BПісля V − 1 раундів він перевіряє, чи можна ще релаксувати якесь ребро
- CВін підраховує цикли пошуком у глибину
- DВін перевіряє, чи має якесь ребро від'ємну вагу
8.Складна
Задача про рюкзак 0/1, розв'язана динамічним програмуванням, потребує O(nW) часу. Чому це називають псевдополіноміальним часом?
- AТому що він працює лише для W = 0
- BТому що n завжди мале
- CТому що алгоритм рандомізований, а його час роботи змінюється для кожних вхідних даних
- DW — число, тому час експоненційний відносно кількості бітів, використаних для запису W