1.Лёгкая
В каком порядке прямой обход (preorder) двоичного дерева посещает узлы?
- AУзел, затем левое поддерево, затем правое поддерево
- BПо уровням сверху вниз
- CЛевое поддерево, затем правое поддерево, затем узел
- DЛевое поддерево, затем узел, затем правое поддерево
2.Лёгкая
Какая операция выполняется за O(1) для массива, но за O(n) для односвязного списка?
- AВставка в начало
- BДоступ к элементу с индексом i
- CУдаление головного элемента
- DЧтение первого элемента
3.Лёгкая
В двоичном дереве поиска значения в левом поддереве узла:
- AМеньше значения узла
- BРасположены в случайном порядке
- CРавны значению узла
- DБольше значения узла
4.Средняя
Где в двоичной куче, хранящейся в массиве с индексацией от 0, находится родитель узла с индексом i?
- AВ индексе 2i + 1
- BВ индексе ⌊i / 2⌋ + 1
- CВ индексе i − 1
- DВ индексе ⌊(i − 1) / 2⌋
5.Средняя
Чему равно значение постфиксного выражения 3 4 + 2 * ?
- A11
- B14
- C24
- D10
6.Средняя
В дорожной сети 100 000 перекрёстков, каждый соединён примерно с 4 другими. Какое представление подходит лучше всего?
- AСписки смежности
- BДвоичная куча рёбер
- CМатрица смежности
- DОдин отсортированный массив вершин
7.Сложная
Алгоритм Кана для топологической сортировки многократно удаляет вершины с полустепенью захода 0. Какая структура хранит эти вершины?
- AМатрица смежности, фиксирующая, какие вершины уже удалены
- BMax-куча, упорядоченная по полустепени исхода
- CСтек всех посещённых рёбер
- DОчередь (или любая коллекция) вершин с полустепенью захода 0
8.Сложная
Динамический массив удваивается при заполнении. Почему многие реализации уменьшают его, только когда он заполнен на четверть, а не наполовину?
- AПотому что распределитель памяти может освобождать память только четвертями блока
- BЧтобы массив оставался отсортированным
- CПотому что уменьшение вдвое при половинном заполнении привело бы к потере элементов
- DЧтобы избежать повторных изменений размера, когда push и pop чередуются вблизи границы
Ответы
- 1. A · Узел, затем левое поддерево, затем правое поддерево
- 2. B · Доступ к элементу с индексом i
- 3. A · Меньше значения узла
- 4. D · В индексе ⌊(i − 1) / 2⌋
- 5. B · 14
- 6. A · Списки смежности
- 7. D · Очередь (или любая коллекция) вершин с полустепенью захода 0
- 8. D · Чтобы избежать повторных изменений размера, когда push и pop чередуются вблизи границы
Полные пошаговые решения: занимайтесь этой темой на examproblems.com.