2004-gre-cs-practice-book.pdf/Q60 — различия между версиями
Материал из DISCOPAL
StasFomin (обсуждение | вклад) (Новая страница: « == Вопрос: Q60-4c9f66 == <i>Тут вставьте перевод вопроса. Используйте [https://wiki.4intra.net/Help:%D0%A4%D0%BE%D1%80…») |
StasFomin (обсуждение | вклад) |
||
(не показана одна промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
− | |||
== Вопрос: Q60-4c9f66 == | == Вопрос: Q60-4c9f66 == | ||
− | + | Рассмотрите следующие возможные структуры данных для набора из ''n'' различных целых чисел: | |
− | + | # [https://en.wikipedia.org/wiki/Min-max_heap Минимальная куча] | |
− | + | # Односвязный список длиной ''n'', отсортированный в порядке возрастания | |
− | + | # [https://en.wikipedia.org/wiki/Self-balancing_binary_search_tree Сбалансированное дерево бинарного поиска]. | |
+ | |||
+ | Для какой из этих структур данных требуется количество шагов ''O(logn)'' в наихудшем случае, чтобы найти и удалить 7-й по величине элемент? | ||
=== Ответы === | === Ответы === | ||
− | + | * Только 1 | |
− | + | * Только 2 | |
+ | * 1 и 2 | ||
+ | * 1 и 3 | ||
+ | * Правильный ответ: 2 и 3 | ||
− | + | === Объяснение === | |
− | + | {{cstest-source|2004-gre-cs-practice-book.pdf|40|60}} | |
− | + | ||
− | + | ||
− | + | ||
− | + | * Минимальная куча — бинарное дерево, где минимальный элемент корневой. Найти конкретный по счету элемент — O(1), но будет проблема потом после удаления все перестроить — там будет O(n). | |
− | + | * «Односвязный отсортированный список» — легко. В оригинале был «массив», но это не билось с ответом, ибо удаление из массива во многих языках — это перестройка массива, заменил на список. | |
− | + | * SBBST (красно-черное или AVL) — да, и быстрый поиск и ребаланс за лог. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | {{question-ok|[[Участник:StasFomin|StasFomin]] 06:13, 16 декабря 2024 (UTC)}} | |
− | + | [[Категория:Структуры данных]] |
Текущая версия на 06:13, 16 декабря 2024
Вопрос: Q60-4c9f66
Рассмотрите следующие возможные структуры данных для набора из n различных целых чисел:
- Минимальная куча
- Односвязный список длиной n, отсортированный в порядке возрастания
- Сбалансированное дерево бинарного поиска.
Для какой из этих структур данных требуется количество шагов O(logn) в наихудшем случае, чтобы найти и удалить 7-й по величине элемент?
Ответы
- Только 1
- Только 2
- 1 и 2
- 1 и 3
- Правильный ответ: 2 и 3
Объяснение
Исходники — вопрос 60 на 40 странице книги «2004-gre-cs-practice-book.pdf»
- Минимальная куча — бинарное дерево, где минимальный элемент корневой. Найти конкретный по счету элемент — O(1), но будет проблема потом после удаления все перестроить — там будет O(n).
- «Односвязный отсортированный список» — легко. В оригинале был «массив», но это не билось с ответом, ибо удаление из массива во многих языках — это перестройка массива, заменил на список.
- SBBST (красно-черное или AVL) — да, и быстрый поиск и ребаланс за лог.