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

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

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

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

1.Легка

Глибина вузла в дереві — це:

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

Що таке листок у дереві?

  1. AВузол без батька
  2. BВузол рівно з однією дитиною
  3. CВузол без дітей
  4. DВузол із найбільшим значенням
3.Легка

Яку структуру зазвичай використовують для реалізації черги з пріоритетом?

  1. AРядок
  2. BКупу
  3. CСтек
  4. DНевпорядкований однозв'язний список
4.Середня

Вузол бінарного дерева пошуку має праве піддерево. Де розташований його наступник у симетричному порядку (in-order successor)?

  1. AЗавжди його права дитина
  2. BЗавжди його батько
  3. CКрайній лівий вузол його правого піддерева
  4. DКрайній правий вузол його лівого піддерева
5.Середня

Яку структуру даних використовують, щоб перевірити, чи збалансовані дужки в «{[()]}»?

  1. AГеш-таблицю
  2. BБінарне дерево пошуку
  3. CЧергу
  4. DСтек
6.Середня

Яке призначення сторожового (фіктивного, sentinel) вузла у зв'язному списку?

  1. AНе дати списку зростати понад фіксовану максимальну кількість вузлів
  2. BСпростити код, усунувши особливі випадки на голові чи хвості
  3. CЗробити список відсортованим
  4. DЗберігати кількість елементів
7.Складна

Яка структура даних забезпечує кеш LRU (least recently used) з операціями get і put за O(1)?

  1. AГеш-мапа в поєднанні з двозв'язним списком
  2. BОдин відсортований масив
  3. CЛише стек
  4. DЛише бінарне дерево пошуку
8.Складна

У циклічному буфері front == rear може означати як порожній, так і заповнений буфер. Який поширений спосіб їх розрізнити?

  1. AЗавжди очищати буфер щоразу, коли front дорівнює rear, тож стан — порожній
  2. BРобити розмір буфера степенем двійки
  3. CЗберігати front і rear в одній змінній
  4. DЗберігати окремий лічильник елементів або завжди залишати одну комірку невикористаною

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

  1. 1. A · Кількість ребер від кореня до цього вузла
  2. 2. C · Вузол без дітей
  3. 3. B · Купу
  4. 4. C · Крайній лівий вузол його правого піддерева
  5. 5. D · Стек
  6. 6. B · Спростити код, усунувши особливі випадки на голові чи хвості
  7. 7. A · Геш-мапа в поєднанні з двозв'язним списком
  8. 8. D · Зберігати окремий лічильник елементів або завжди залишати одну комірку невикористаною

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