Робочий аркуш «Структури даних» з відповідями

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

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

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

1.Легка

Що таке коефіцієнт заповнення (load factor) геш-таблиці?

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

В однозв'язному списку кожен вузол містить:

  1. AДані та індекс
  2. BДані та посилання на наступний вузол
  3. CДані та посилання на всі інші вузли
  4. DЛише дані
3.Легка

Яка операція повільна в масиві, але швидка на початку зв'язного списку?

  1. AВизначення довжини масиву фіксованого розміру
  2. BДоступ до 5-го елемента
  3. CВставлення на початок
  4. DЧитання останнього елемента за індексом
4.Середня

Бінарне дерево має корінь 1 з лівою дитиною 2 і правою дитиною 3; вузол 2 має дітей 4 (ліва) і 5 (права). Який прямий обхід (preorder)?

  1. A1 2 4 5 3
  2. B4 5 2 3 1
  3. C1 2 3 4 5
  4. D4 2 5 1 3
5.Середня

Симетричний обхід (in-order) бінарного дерева пошуку відвідує ключі:

  1. AЗавжди в порядку спадання
  2. BУ порядку зростання (відсортовано)
  3. CПо рівнях
  4. DУ порядку вставлення
6.Середня

У бінарній мін-купі, що зберігається в масиві (індексація з 0), діти вузла з індексом i розташовані на позиціях:

  1. A2i + 1 і 2i + 2
  2. B2i і 2i + 1
  3. Ci/2 і i/2 + 1
  4. Di + 1 і i + 2
7.Складна

Дерево відрізків (segment tree) зазвичай використовують для:

  1. AСортування рядків за абеткою шляхом зберігання кожного префікса в окремому вузлі дерева
  2. BРеалізації стека
  3. CЗберігання ребер графа
  4. DВідповідей на запити на діапазонах (наприклад, суми діапазонів) та оновлень за O(log n)
8.Складна

Яке твердження про пірамідальне сортування (heapsort) правильне?

  1. AВоно потребує бінарного дерева пошуку як додаткового сховища, тож використовує O(n) додаткової пам'яті
  2. BВоно стабільне й потребує O(n) додаткової пам'яті
  3. CВоно працює за час O(n) на будь-яких вхідних даних
  4. DВоно сортує на місці за час O(n log n) у найгіршому випадку, але не є стабільним

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

  1. 1. B · Кількість збережених елементів, поділена на кількість кошиків
  2. 2. B · Дані та посилання на наступний вузол
  3. 3. C · Вставлення на початок
  4. 4. A · 1 2 4 5 3
  5. 5. B · У порядку зростання (відсортовано)
  6. 6. A · 2i + 1 і 2i + 2
  7. 7. D · Відповідей на запити на діапазонах (наприклад, суми діапазонів) та оновлень за O(log n)
  8. 8. D · Воно сортує на місці за час O(n log n) у найгіршому випадку, але не є стабільним

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