Структуры данных: лист заданий с ответами

Бесплатный лист заданий для печати по теме «Структуры данных»: 8 задач от простых до экзаменационного уровня, с ответами. Распечатайте его или сохраните как PDF.

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

Имя: ____________________   Дата: ____________

1.Лёгкая

Что такое узлы-братья (siblings) в дереве?

  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.Средняя

У вас есть ссылка на узел в середине списка. В каком списке его можно удалить за O(1)?

  1. AВ двусвязном списке
  2. BВ односвязном списке
  3. CВ отсортированном массиве
  4. DВ динамическом массиве
5.Средняя

Какой абстрактный тип данных использует алгоритм Дейкстры для выбора следующей обрабатываемой вершины?

  1. AСтек
  2. BОчередь FIFO
  3. CМножество без упорядочения
  4. DОчередь с приоритетом по минимуму
6.Средняя

Какова временная сложность поиска ключа в сбалансированном двоичном дереве поиска?

  1. AO(1)
  2. BO(n)
  3. CO(n log n)
  4. DO(log n)
7.Сложная

Зачем серверу выбирать хеш-функцию случайно из универсального семейства?

  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. D · Данные и ссылку на следующий узел
  3. 3. B · Верхний узел, у которого нет родителя
  4. 4. A · В двусвязном списке
  5. 5. D · Очередь с приоритетом по минимуму
  6. 6. D · O(log n)
  7. 7. C · Чтобы сделать крайне маловероятным, что атакующий подберёт много ключей с одинаковым хешем
  8. 8. D · Хранить отдельный счётчик элементов или всегда оставлять одну ячейку свободной

Полные пошаговые решения: занимайтесь этой темой на examproblems.com.