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}} | |
− | {{cstest-source|2004-gre-cs-practice-book.pdf| | + | |
− | + | * Минимальная куча — бинарное дерево, где минимальный элемент корневой. Найти конкретный по счету элемент — O(1), но будет проблема потом после удаления все перестроить — там будет O(n). | |
+ | * «Односвязный отсортированный список» — легко. В оригинале был «массив», но это не билось с ответом, ибо удаление из массива во многих языках — это перестройка массива, заменил на список. | ||
+ | * SBBST (красно-черное или AVL) — да, и быстрый поиск и ребаланс за лог. | ||
− | {{question-ok|}} | + | {{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) — да, и быстрый поиск и ребаланс за лог.