1.Лёгкая
Что такое коэффициент заполнения (load factor) хеш-таблицы?
- AВремя загрузки таблицы с диска
- BЧисло корзин, делённое на среднюю длину хранимых ключей
- CЧисло коллизий на данный момент
- DЧисло хранимых элементов, делённое на число корзин
2.Лёгкая
В чём главное отличие статического массива от динамического?
- AСтатический массив может хранить только числа
- BДинамический массив может расти, переходя в больший блок памяти
- CДинамический массив хранит свои элементы в связанных узлах, поэтому может расти по одному элементу
- DСтатический массив даёт более медленный доступ по индексу
3.Лёгкая
Высота дерева обычно определяется как:
- AЧисло листьев в дереве
- BОбщее число узлов в дереве, считая корень и каждый лист
- CЧисло рёбер на самом длинном пути от корня до листа
- DЧисло потомков корня
4.Средняя
Сколько времени занимает проверка существования ребра (u, v) с помощью матрицы смежности?
- AO(V)
- BO(log V)
- CO(1)
- DO(E)
5.Средняя
Какова высота двоичного дерева поиска с n узлами в худшем случае, если ключи вставляются в отсортированном порядке?
- Alog₂ n
- B1
- C√n
- Dn (дерево превращается в связный список)
6.Средняя
Как вставляется новый элемент в двоичную кучу?
- AЕго вставляют в отсортированную позицию, сдвигая все бо́льшие элементы на одно место вправо
- BЕго помещают в конец массива и поднимают вверх (sift up), пока он нарушает свойство кучи
- CВсю кучу перестраивают с нуля
- DЕго помещают в корень и опускают вниз
7.Сложная
Почему в хеш-таблице с открытой адресацией удаление часто выполняют с помощью метки «надгробие» (tombstone)?
- AОсвобождение ячейки могло бы разорвать последовательность пробирования для других ключей
- BНадгробия ускоряют хеширование
- CУдалённые ключи нужно хранить вечно из соображений безопасности, поэтому ячейки нельзя использовать повторно
- DЭто делает таблицу отсортированной
8.Сложная
Какая пара обходов всегда однозначно определяет двоичное дерево с различными ключами?
- AОдин только прямой
- BПрямой и симметричный (preorder и inorder)
- CОдин только обход по уровням
- DПрямой и обратный (preorder и postorder)
Ответы
- 1. D · Число хранимых элементов, делённое на число корзин
- 2. B · Динамический массив может расти, переходя в больший блок памяти
- 3. C · Число рёбер на самом длинном пути от корня до листа
- 4. C · O(1)
- 5. D · n (дерево превращается в связный список)
- 6. B · Его помещают в конец массива и поднимают вверх (sift up), пока он нарушает свойство кучи
- 7. A · Освобождение ячейки могло бы разорвать последовательность пробирования для других ключей
- 8. B · Прямой и симметричный (preorder и inorder)
Полные пошаговые решения: занимайтесь этой темой на examproblems.com.