1.Легка
Яку структуру зазвичай використовують для реалізації черги з пріоритетом?
- AНевпорядкований однозв'язний список
- BРядок
- CСтек
- DКупу
2.Легка
Висоту дерева зазвичай визначають як:
- AКількість ребер на найдовшому шляху від кореня до листка
- BЗагальну кількість вузлів у дереві, враховуючи корінь і кожен листок
- CКількість дітей кореня
- DКількість листків у дереві
3.Легка
Скільки ребер має дерево з n вузлами?
- A2n
- Bn − 1
- Cn
- Dn + 1
4.Середня
Яку структуру даних використовує виконувана програма, щоб відстежувати активні виклики функцій та їхні локальні змінні?
- AБінарне дерево пошуку фреймів
- BГеш-таблицю функцій
- CСтек викликів
- DЧергу пам'яті купи
5.Середня
Де розташований батько вузла з індексом i в бінарній купі, що зберігається в масиві з індексацією від 0?
- AВ індексі 2i + 1
- BВ індексі i − 1
- CВ індексі ⌊i / 2⌋ + 1
- DВ індексі ⌊(i − 1) / 2⌋
6.Середня
Скільки вузлів має ідеальне бінарне дерево висоти h, якщо висоту рахують у ребрах?
- A2h
- B2h+1 − 1
- Ch2
- D2h + 1
7.Складна
У циклічному буфері front == rear може означати як порожній, так і заповнений буфер. Який поширений спосіб їх розрізнити?
- AЗберігати front і rear в одній змінній
- BЗавжди очищати буфер щоразу, коли front дорівнює rear, тож стан — порожній
- CРобити розмір буфера степенем двійки
- DЗберігати окремий лічильник елементів або завжди залишати одну комірку невикористаною
8.Складна
Структура union-find (система неперетинних множин) з об'єднанням за рангом і стисненням шляху має амортизовану вартість операції:
- AO(n)
- BO(α(n)), обернена функція Аккермана, практично стала
- CO(n²)
- DРівно O(log n)
Ключ відповідей
- 1. D · Купу
- 2. A · Кількість ребер на найдовшому шляху від кореня до листка
- 3. B · n − 1
- 4. C · Стек викликів
- 5. D · В індексі ⌊(i − 1) / 2⌋
- 6. B · 2h+1 − 1
- 7. D · Зберігати окремий лічильник елементів або завжди залишати одну комірку невикористаною
- 8. B · O(α(n)), обернена функція Аккермана, практично стала
Повні покрокові розв’язки: тренуйте цю тему на examproblems.com.