Все тесты предмета

Ответы на тесты Алгоритмы и структуры данных.sa_Python0

Вопросы и варианты доступны бесплатно. 63 ответа доступны бесплатно — откройте их кнопкой ниже. Полный набор — в личном кабинете на 7 дней.

210 вопросов 10 тестов в одном предмете Доступ 7 дней
Содержание предмета

Бесплатные ответы на тесты по предмету «Алгоритмы и структуры данных» — Синергия и МТИ

Вопрос 1Ответ открыт бесплатно

Использование … оптимально для реализации очереди в Python

  1. списка✓ Правильный ответ
  2. множества
  3. кортежа
  4. словаря
✓ Правильный ответ

списка

Вопрос 2

… использует подход "разделяй и властвуй"

  1. Пузырьковая сортировка
  2. Сортировка слиянием
  3. Быстрая сортировка
  4. Шейкерная сортировка
Вопрос 3

Метод … используется для добавления элемента в конец очереди

  1. append()
  2. insert()
  3. push()
  4. enqueue()
Вопрос 4

… - временная сложность сортировки слиянием в худшем случае

  1. O(n)
  2. O(n log n)
  3. O(n^2)
  4. O(log n)
Вопрос 5

Метод … удаляет первый элемент очереди

  1. pop(0)
  2. remove(0)
  3. dequeue()
  4. del
Вопрос 6Ответ открыт бесплатно

Структура данных, работающая по принципу "первым пришел - первым ушел" - это …

  1. Стек
  2. Очередь✓ Правильный ответ
  3. Дерево
  4. Граф
✓ Правильный ответ

Очередь

Вопрос 7

… является рекурсивным методом сортировки

  1. Быстрая сортировка
  2. Сортировка вставками
  3. Сортировка выбором
  4. Сортировка пузырьком
Вопрос 8

Основная цель сортировки слиянием - …

  1. разделить массив на части и затем объединить их в отсортированном порядке
  2. сравнить и поменять местами соседние элементы
  3. найти наименьший элемент и переместить его в начало массива
  4. разделить массив на части и затем объединить их в случайном порядке
Вопрос 9

В алгоритме сортировки слиянием массив разделяется на ... части до тех пор, пока каждая часть не станет массивом длиной 1

  1. две
Вопрос 10Ответ открыт бесплатно

В очереди элементы добавляются в конец и удаляются из …

  1. начала✓ Правильный ответ
✓ Правильный ответ

начала

Вопрос 11

В очереди операции добавления и удаления элементов происходят на ... концах

  1. разных
Вопрос 12

Для реализации очереди в Python часто используется структура данных ... .

  1. deque
Вопрос 13Ответ открыт бесплатно

В Python метод pop(0) удаляет ... элемент очереди

  1. первый✓ Правильный ответ
✓ Правильный ответ

первый

Вопрос 14

В сортировке слиянием подмассивы объединяются в процессе, называемом ...

  1. слияние
  2. слиянием
Вопрос 15

В сортировке слиянием два … подмассива сливаются в один

  1. отсортированных
Вопрос 16Ответ открыт бесплатно

Очередь реализует принцип ... , что означает, что первым добавленный элемент будет первым удален

  1. FIFO✓ Правильный ответ
✓ Правильный ответ

FIFO

Вопрос 17

Установите соответствие между понятием и его описанием:

  1. очередь
  2. FIFO
  3. pop(0)
  4. сортировка слиянием
  5. структура данных, работающая по принципу "первым пришел первым ушел"
  6. принцип работы очереди
  7. удаляет первый элемент из списка
  8. алгоритм сортировки, использующий подход "разделяй и властвуй"
Вопрос 18

Установите соответствие между операцией и её описанием:

  1. enqueue
  2. dequeue
  3. merge
  4. split
  5. добавление элемента в очередь
  6. удаление элемента из очереди
  7. объединение отсортированных подмассивов
  8. разделение массива на части
Вопрос 19

Расположите этапы выполнения сортировки слиянием в правильном порядке:

  1. разделение массива на две части
  2. рекурсивная сортировка подмассивов
  3. объединение отсортированных подмассивов
  4. слияние подмассивов
Вопрос 20Ответ открыт бесплатно

Расположите этапы работы очереди в правильном порядке:

  1. добавление элемента в очередь✓ Правильный ответ
  2. обработка первого элемента✓ Правильный ответ
  3. удаление первого элемента✓ Правильный ответ
  4. обработка следующего элемента✓ Правильный ответ
✓ Правильный ответ

добавление элемента в очередь ; обработка первого элемента ; удаление первого элемента ; обработка следующего элемента

Вопрос 21

… итерации работы сортировки потребуется для сортировки массива из 8 элементов с использованием сортировки слиянием

  1. 3
  2. 4
  3. 6
  4. 7
Вопрос 22

Метод … используется для добавления элемента в конец списка в Python

  1. insert()
  2. append()
  3. add()
  4. extend()
Вопрос 23Ответ открыт бесплатно

Выражение `arr[2]`, если `arr = [1, 3, 5, 7]` даст результат …

  1. 1
  2. 3
  3. 5✓ Правильный ответ
  4. 7
✓ Правильный ответ

5

Вопрос 24

Функция … используется для получения длины списка в Python

  1. len()
  2. size()
  3. count()
  4. length()
Вопрос 25

… эффективен для отсортированных массивов

  1. Линейный поиск
  2. Двоичный поиск
  3. Экспоненциальный поиск
  4. Интерполяционный поиск
Вопрос 26Ответ открыт бесплатно

Метод … используется для удаления элемента по индексу в Python

  1. delete()
  2. remove()
  3. pop()✓ Правильный ответ
  4. discard()
✓ Правильный ответ

pop()

Вопрос 27

Тип данных … в Python используется для хранения упорядоченной коллекции элементов

  1. set
  2. dict
  3. list
  4. tuple
Вопрос 28

У выражения `arr[1:3]`, если `arr = [2, 4, 6, 8, 10]` будет результат …

  1. [4, 6, 8]
  2. [2, 4]
  3. [4, 6]
  4. [6, 8]
Вопрос 29

Метод … используется для сортировки списка в Python

  1. sort()
  2. order()
  3. arrange()
Вопрос 30Ответ открыт бесплатно

В Python, метод ... возвращает количество элементов в списке

  1. len()✓ Правильный ответ
  2. len✓ Правильный ответ
✓ Правильный ответ

len() ; len

Вопрос 31

Алгоритм ... поиска работает на отсортированном массиве и делит его пополам на каждом шаге

  1. двоичного
Вопрос 32

В Python, срез ... позволяет получить часть списка от индекса 2 до 4, исключая последний

  1. [2:4]
Вопрос 33Ответ открыт бесплатно

Выражение `arr. … (5)`, добавляет элемент в конец списка

  1. append()✓ Правильный ответ
  2. append✓ Правильный ответ
✓ Правильный ответ

append() ; append

Вопрос 34

Если в Python требуется удалить элемент списка по его значению, используется метод ...

  1. remove()
  2. remove
Вопрос 35

В алгоритме бинарного поиска, если искомое значение меньше значения в середине массива, дальнейший поиск осуществляется в ... части массива

  1. левой
Вопрос 36Ответ открыт бесплатно

В Python, оператор ... используется для проверки наличия элемента в списке.

  1. in✓ Правильный ответ
✓ Правильный ответ

in

Вопрос 37

Для добавления элемента на определенную позицию в списке используется метод ...

  1. insert()
  2. insert
Вопрос 38

Установите соответствие между методом и его действием:

  1. append()
  2. pop()
  3. remove()
  4. extend()
  5. добавляет элемент в конец списка
  6. удаляет последний элемент
  7. удаляет элемент по значению
  8. добавляет элементы из другого списка
Вопрос 39

Установите соответствие между типом данных и его свойствами:

  1. list
  2. tuple
  3. set
  4. dict
  5. упорядоченная и изменяемая коллекция
  6. упорядоченная и неизменяемая коллекция
  7. неупорядоченная коллекция уникальных элементов
  8. коллекция пар "ключ значение"
Вопрос 40Ответ открыт бесплатно

Расположите этапы выполнения двоичного поиска в правильном порядке:

  1. деление массива на половины✓ Правильный ответ
  2. проверка середины массива✓ Правильный ответ
  3. сравнение с искомым значением✓ Правильный ответ
  4. продолжение поиска в нужной половине✓ Правильный ответ
✓ Правильный ответ

деление массива на половины ; проверка середины массива ; сравнение с искомым значением ; продолжение поиска в нужной половине

Вопрос 41

Сопоставьте операции со списками с соответствующими методами:

  1. добавление элемента
  2. удаление элемента по значению
  3. сортировка списка
  4. удаление элемента по индексу
  5. append()
  6. remove()
  7. sort()
  8. pop()
Вопрос 42

В массиве [1, 3, 5, 7, 9] вам нужно найти элемент 7. Алгоритм … обеспечит наименьшее количество сравнений

  1. линейный поиска
  2. двоичный поиска
  3. случайный поиска
  4. экспоненциальный поиска
Вопрос 43Ответ открыт бесплатно

… оптимален для использования в качестве ключей в хеш таблице

  1. Список
  2. Множество
  3. Кортеж✓ Правильный ответ
  4. Словарь
✓ Правильный ответ

Кортеж

Вопрос 44

Функцию … следует использовать для вычисления уникального идентификатора, связанного с содержимым объекта

  1. hash()
  2. id()
  3. ord()
  4. str()
Вопрос 45

Тип данных “...” является неизменяемым и может использоваться в качестве ключа в словаре

  1. список
  2. множество
  3. кортеж
  4. словарь
Вопрос 46Ответ открыт бесплатно

Если в Python попытаться изменить ключ словаря, …

  1. словарь изменится
  2. возникнет ошибка✓ Правильный ответ
  3. ключ будет автоматически обновлен
  4. ничего не произойдет
✓ Правильный ответ

возникнет ошибка

Вопрос 47

Цель использования хеш-функции в структуре данных - это …

  1. сортировка данных
  2. поиск элемента
  3. определение адреса хранения данных
  4. изменение данных
Вопрос 48

Функция hash() возвращает …

  1. строку
  2. число
  3. список
  4. объект
Вопрос 49

Качественная хеш-функция должна равномерно распределять … по всему диапазону индексов

  1. ключи
Вопрос 50Ответ открыт бесплатно

… имеют уникальные хеш значения для всех экземпляров?

  1. Строки✓ Правильный ответ
  2. Кортежи
  3. Множества
  4. Списки
✓ Правильный ответ

Строки

Вопрос 51

В Python функция ... используется для вычисления хеш значения объекта

  1. hash()
  2. hash
Вопрос 52

Хеш-таблица — это структура данных, в которой для поиска элемента используется его ….

  1. хеш-значение
  2. значение
Вопрос 53Ответ открыт бесплатно

Ключи в словаре Python должны быть ... .

  1. неизменяемыми✓ Правильный ответ
✓ Правильный ответ

неизменяемыми

Вопрос 54

В Python объекты, которые можно хешировать, называются ...

  1. хешируемыми
Вопрос 55

Словари в Python реализованы с использованием ... таблицы

  1. хеш
Вопрос 56Ответ открыт бесплатно

Если два объекта имеют одинаковые хеш значения, это называется ... .

  1. коллизией✓ Правильный ответ
✓ Правильный ответ

коллизией

Вопрос 57

Хеш таблицы используются для быстрого ... по ключу

  1. поиска
Вопрос 58

В хеш-таблице данные хранятся в виде пар ключ-... .

  1. значение
Вопрос 59

Установите соответствие между термином и его определением:

  1. хеш функция
  2. хеш таблица
  3. коллизия
  4. словарь
  5. преобразование объекта в число
  6. структура данных, использующая хеширование
  7. конфликт между двумя хеш значениями
  8. хеш таблица в Python
Вопрос 60Ответ открыт бесплатно

Установите соответствие между понятием и его характеристикой:

  1. хеш-значение✓ Правильный ответ
  2. множество✓ Правильный ответ
  3. коллизия✓ Правильный ответ
  4. хеш-функция✓ Правильный ответ
  5. числовое значение, сгенерированное для объекта✓ Правильный ответ
  6. структура данных, которая хранит только уникальные элементы✓ Правильный ответ
  7. конфликт при одинаковых хеш-значениях для разных объектов✓ Правильный ответ
  8. возвращает уникальный идентификатор для объекта✓ Правильный ответ
✓ Правильный ответ

хеш-значение = числовое значение, сгенерированное для объекта ; множество = структура данных, которая хранит только уникальные элементы ; коллизия = конфликт при одинаковых хеш-значениях для разных объектов ; хеш-функция = возвращает уникальный идентификатор для объекта

Вопрос 61

Расположите шаги создания и использования словаря в Python в правильном порядке:

  1. создание словаря
  2. определение ключей
  3. присвоение значений
  4. использование значений по ключам
Вопрос 62

Расположите шаги при возникновении коллизии в хеш таблице в правильном порядке:

  1. определение хеш значения
  2. проверка наличия коллизии
  3. обработка коллизии
  4. присвоение значения
Вопрос 63Ответ открыт бесплатно

Функция hash("test") вернёт …

  1. строку "test"
  2. уникальное число✓ Правильный ответ
  3. произвольное число
  4. ошибку
✓ Правильный ответ

уникальное число

Вопрос 64

Функция `len()` в Python возвращает …

  1. длину строки
  2. сумму чисел в списке
  3. максимальное значение в списке
  4. минимальное значение в списке
Вопрос 65

Оператор … используется для выполнения целочисленного деления

  1. /
  2. //
  3. %
  4. ..
Вопрос 66Ответ открыт бесплатно

Ключевое слово … используется для создания функции в Python

  1. func
  2. function
  3. def✓ Правильный ответ
  4. lambda
✓ Правильный ответ

def

Вопрос 67

Примером линейного поиска является …

  1. поиск элемента в отсортированном массиве с помощью бинарного поиска
  2. поиск элемента в неотсортированном массиве путем проверки каждого элемента
  3. поиск элемента в хеш таблице
  4. использование метода двух указателей для поиска элементов
Вопрос 68

Функция `input()` возвращает тип данных …

  1. int
  2. float
  3. string
  4. bool
Вопрос 69

Функция … используется для сортировки списка в Python

  1. sorted()
  2. list()
  3. reverse()
Вопрос 70Ответ открыт бесплатно

Оператор … используется для создания цикла в Python

  1. if
  2. else
  3. while✓ Правильный ответ
  4. loop
✓ Правильный ответ

while

Вопрос 71

Значение … возвращается выражением `3 % 2`

  1. 1
  2. 2
  3. 0
  4. 3
Вопрос 72

Ключевое слово ... позволяет создавать условия в Python

  1. if
Вопрос 73Ответ открыт бесплатно

В цикле ... можно создать переменную цикла, а также задать её изменения по ходу итерации

  1. for✓ Правильный ответ
✓ Правильный ответ

for

Вопрос 74

Функция ... используется для вычисления длины строки или списка.

  1. len
Вопрос 75

В Python циклы while продолжают выполняться, пока ... выражение является истинным

  1. логическое
Вопрос 76Ответ открыт бесплатно

Оператор ... используется для целочисленного деления, при котором результат делится нацело

  1. //✓ Правильный ответ
✓ Правильный ответ

//

Вопрос 77

Функция ... используется для округления числа до ближайшего целого

  1. round
Вопрос 78

В языке Python оператор ... применяется для вывода информации в консоль

  1. print
Вопрос 79

Функция ... возвращает наименьший элемент в списке.

  1. min
Вопрос 80Ответ открыт бесплатно

Установите соответствие между оператором и его значением:

  1. //✓ Правильный ответ
  2. %✓ Правильный ответ
  3. **✓ Правильный ответ
  4. ==
  5. целочисленное деление✓ Правильный ответ
  6. остаток от деления✓ Правильный ответ
  7. возведение в степень✓ Правильный ответ
  8. сравнение на равенство✓ Правильный ответ
✓ Правильный ответ

// = целочисленное деление ; % = остаток от деления ; ** = возведение в степень ; == = сравнение на равенство

Вопрос 81

Установите соответствие между функцией и её назначением:

  1. len()
  2. sum()
  3. max()
  4. min()
  5. длина строки или списка
  6. сумма элементов списка
  7. максимальный элемент в списке
  8. минимальный элемент в списке
Вопрос 82

Расположите шаги выполнения линейного поиска в правильном порядке:

  1. инициализация переменной для хранения индекса
  2. проверка каждого элемента на соответствие условию поиска
  3. возврат индекса элемента, если он найден
  4. возврат специального значения, если элемент не найден
Вопрос 83Ответ открыт бесплатно

Расположите типы сложности алгоритмов по возрастанию:

  1. O(1)✓ Правильный ответ
  2. O(log n)✓ Правильный ответ
  3. O(n)✓ Правильный ответ
  4. O(n^2)✓ Правильный ответ
✓ Правильный ответ

O(1) ; O(log n) ; O(n) ; O(n^2)

Вопрос 84

… функция на Python принимает список чисел и возвращает индекс первого найденного четного числа. Если четное число не найдено, функция должна возвращать 1.

  1. def find_even_index(lst):    for i in range(len(lst)):       if lst[i] % 2 == 0:          return i    return 1
  2. def find_even_index(lst):    for i in range(len(lst)):       if lst[i] % 2 == 0:          return i    return 2
  3. def find_even_index(lst):     for i in range(len(lst)):        if lst[i] % 4 == 0:          return i     return 1
  4. def find_even_index(lst):    for i in range(len(lst)):       if i % 2 == 0:          return i    return 1
Вопрос 85

… - техника оптимизации, при которой задача разбивается на подзадачи, результаты которых сохраняются для повторного использования?

  1. Жадный алгоритм
  2. Динамическое программирование
  3. Разделяй и властвуй
  4. Поиск с возвратом
Вопрос 86Ответ открыт бесплатно

… используется в динамическом программировании

  1. Мемоизация✓ Правильный ответ
  2. Жадность
  3. Поиск в глубину
  4. Перебор
✓ Правильный ответ

Мемоизация

Вопрос 87

… реализует подход динамического программирования

  1. Алгоритм Паскаля
  2. Алгоритм Флойда Уоршелла
  3. Алгоритм Краскала
  4. Алгоритм Прима
Вопрос 88

… - техника, при которой задачи решаются снизу вверх, начиная с базовых случаев

  1. Мемоизация
  2. Рекурсия
  3. Итерация
  4. Табуляция
Вопрос 89

… оптимально решать методом динамического программирования

  1. Задачи с жадным выбором
  2. Задачи с перекрывающимися подзадачами
  3. Задачи на поиск в глубину
  4. Задачи на комбинаторный перебор
Вопрос 90Ответ открыт бесплатно

… демонстрирует использование динамического программирования

  1. Решение задачи о рюкзаке✓ Правильный ответ
  2. Построение остовного дерева
  3. Поиск минимального пути
  4. Генерация всех подмножеств множества
✓ Правильный ответ

Решение задачи о рюкзаке

Вопрос 91

То, что задача … указывает на необходимость применения динамического программирования

  1. имеет одно решение
  2. может быть решена жадным алгоритмом
  3. имеет подзадачи, которые решаются многократно
  4. требует полного перебора
Вопрос 92

Мемоизация …

  1. использует итеративный подход
  2. хранит результаты уже решенных подзадач
  3. применяется только в задачах поиска в ширину
  4. увеличивает количество вычислений
Вопрос 93Ответ открыт бесплатно

В динамическом программировании для хранения промежуточных результатов используют ...

  1. таблицу✓ Правильный ответ
✓ Правильный ответ

таблицу

Вопрос 94

Метод “...” позволяет избегать повторных вычислений одной и той же подзадачи.

  1. мемоизация
Вопрос 95

Для решения задачи о рюкзаке с использованием динамического программирования необходимо заполнить ...

  1. таблицу
Вопрос 96Ответ открыт бесплатно

... используется для вычисления наименьших затрат на выполнение цепочки операций

  1. Динамическое программирование✓ Правильный ответ
✓ Правильный ответ

Динамическое программирование

Вопрос 97

В задачах с ... подзадачами динамическое программирование является эффективным подходом

  1. перекрывающимися
Вопрос 98

... позволяет разбивать задачу на более мелкие подзадачи и использовать их решения для более крупных задач.

  1. Динамическое программирование
Вопрос 99

Динамическое программирование решает задачи путём ... подзадач

  1. рекурсии
Вопрос 100Ответ открыт бесплатно

Метод табуляции предполагает, что задачи решаются ...

  1. снизу вверх✓ Правильный ответ
✓ Правильный ответ

снизу вверх

Вопрос 101

Установите соответствие между термином и его определением:

  1. мемоизация
  2. табуляция
  3. перекрывающиеся подзадачи
  4. оптимальное подструктурирование
  5. сохранение результатов для повторного использования
  6. решение задач снизу вверх
  7. подзадачи, которые используются в решении других подзадач
  8. структура задачи позволяет решать её частично и использовать эти результаты
Вопрос 102

Установите соответствие между задачей и подходом к её решению:

  1. задача о рюкзаке
  2. поиск кратчайшего пути
  3. задача о разделении массива
  4. построение остовного дерева
  5. динамическое программирование
  6. жадный алгоритм
  7. разделяй и властвуй
  8. табуляция
Вопрос 103Ответ открыт бесплатно

Расположите порядок действий при решении задачи с помощью мемоизации:

  1. проверить, решена ли уже подзадача✓ Правильный ответ
  2. если не решена, решить её✓ Правильный ответ
  3. сохранить результат✓ Правильный ответ
  4. вернуть сохраненный результат✓ Правильный ответ
✓ Правильный ответ

проверить, решена ли уже подзадача ; если не решена, решить её ; сохранить результат ; вернуть сохраненный результат

Вопрос 104

Расположите порядок действий при решении задачи о рюкзаке с использованием динамического программирования:

  1. создать таблицу для хранения результатов
  2. заполнить таблицу базовыми случаями
  3. заполнить оставшиеся ячейки таблицы
  4. найти оптимальное решение, используя заполненную таблицу
Вопрос 105

Задача … может быть решена с помощью динамического программирования

  1. поиска в ширину
  2. поиска кратчайшего пути в графе
  3. поиска наибольшей возрастающей подпоследовательности
  4. сортировки пузырьком
Вопрос 106Ответ открыт бесплатно

… последовательно сравнивает значения соседних элементов и меняет числа местами, если предыдущее оказывается больше последующего

  1. Линейный поиск
  2. Пузырьковая сортировка✓ Правильный ответ
  3. Сортировка выбором
  4. Линейная регрессия
✓ Правильный ответ

Пузырьковая сортировка

Вопрос 107

… работает путем многократного прохода по списку и обмена соседними элементами, если они находятся в неправильном порядке

  1. Быстрая сортировка
  2. Сортировка слиянием
  3. Пузырьковая сортировка
  4. Сортировка вставками
Вопрос 108

… меняет местами минимальный элемент из неотсортированной части массива с первым элементом неотсортированной части?

  1. Сортировка выбором
  2. Пузырьковая сортировка
  3. Быстрая сортировка
  4. Сортировка вставками
Вопрос 109

… перемещает каждый элемент в правильное место отсортированной части массива

  1. Пузырьковая сортировка
  2. Сортировка выбором
  3. Сортировка вставками
  4. Сортировка слиянием
Вопрос 110Ответ открыт бесплатно

Временная сложность пузырьковой сортировки в худшем случае - …

  1. O(n)
  2. O(log n)
  3. O(n^2)✓ Правильный ответ
  4. O(n log n)
✓ Правильный ответ

O(n^2)

Вопрос 111

… использует стратегию "разделяй и властвуй"?

  1. Быстрая сортировка
  2. Пузырьковая сортировка
  3. Сортировка вставками
  4. Сортировка выбором
Вопрос 112

… - временная сложность сортировки вставками в лучшем случае

  1. O(n)
  2. O(n^2)
  3. O(log n)
  4. O(n log n)
Вопрос 113Ответ открыт бесплатно

… работает на основе идеи последовательного деления массива на меньшие части

  1. Пузырьковая сортировка
  2. Сортировка слиянием✓ Правильный ответ
  3. Сортировка выбором
  4. Сортировка вставками
✓ Правильный ответ

Сортировка слиянием

Вопрос 114

Алгоритм ... сортировки многократно проходит по списку, сравнивая соседние элементы и меняя их местами, если они расположены в неправильном порядке

  1. пузырьковой
Вопрос 115

В алгоритме сортировки ... минимальный элемент выбирается и меняется местами с первым элементом неотсортированной части массива

  1. выбором
Вопрос 116Ответ открыт бесплатно

Алгоритм сортировки ... вставляет каждый элемент в отсортированную часть массива, перемещая его на правильное место

  1. вставками✓ Правильный ответ
✓ Правильный ответ

вставками

Вопрос 117

В худшем случае временная сложность пузырьковой сортировки составляет ...

  1. O(n^2)
Вопрос 118

Сортировка вставками имеет временную сложность ... в лучшем случае, если массив уже отсортирован.

  1. O(n)
Вопрос 119

Алгоритм ... сортировки использует стратегию "разделяй и властвуй", разделяя массив на меньшие части

  1. быстрой
Вопрос 120Ответ открыт бесплатно

В алгоритме сортировки слиянием временная сложность составляет ... в худшем случае

  1. O(nlogn)✓ Правильный ответ
  2. O(n log n)✓ Правильный ответ
✓ Правильный ответ

O(nlogn) ; O(n log n)

Вопрос 121

Алгоритм сортировки ... делит массив на части, а затем объединяет их в отсортированном порядке

  1. слиянием
Вопрос 122

Установите соответствие между алгоритмом и его описанием:

  1. пузырьковая сортировка
  2. сортировка выбором
  3. сортировка вставками
  4. сортировка слиянием
  5. сравнивает и меняет соседние элементы местами
  6. выбирает минимальный элемент и меняет его местами
  7. вставляет элемент на правильное место
  8. делит массив на части и объединяет их
Вопрос 123Ответ открыт бесплатно

Установите соответствие между временной сложностью и алгоритмом:

  1. O(n^2)✓ Правильный ответ
  2. O(n)✓ Правильный ответ
  3. O(n log n)✓ Правильный ответ
  4. O(log n)✓ Правильный ответ
  5. пузырьковая сортировка в худшем случае✓ Правильный ответ
  6. сортировка вставками в лучшем случае✓ Правильный ответ
  7. быстрая сортировка в худшем случае✓ Правильный ответ
  8. линейный поиск✓ Правильный ответ
✓ Правильный ответ

O(n^2) = пузырьковая сортировка в худшем случае ; O(n) = сортировка вставками в лучшем случае ; O(n log n) = быстрая сортировка в худшем случае ; O(log n) = линейный поиск

Вопрос 124

Расположите этапы работы пузырьковой сортировки в правильном порядке:

  1. сравнение соседних элементов
  2. перемещение элемента на правильное место
  3. повторный проход по списку
  4. завершение алгоритма
Вопрос 125

Расположите этапы работы сортировки вставками в правильном порядке:

  1. выбор следующего элемента
  2. сравнение с элементами в отсортированной части
  3. перемещение элементов в отсортированной части
  4. вставка элемента на правильное место
Вопрос 126Ответ открыт бесплатно

В массиве из 10 элементов вам нужно отсортировать его с минимальным количеством операций. Для оптимального выполнения этой задачи подойдёт …

  1. пузырьковая сортировка
  2. сортировка вставками
  3. быстрая сортировка✓ Правильный ответ
  4. сортировка слиянием
✓ Правильный ответ

быстрая сортировка

Вопрос 127

… - это структура данных, в которой каждый элемент имеет не более двух дочерних элементов?

  1. Двоичное дерево
  2. Связанный список
  3. Граф
  4. Хеш таблица
Вопрос 128

… - это метод обхода дерева или графа, при котором сначала посещаются все узлы на текущем уровне, а затем переходят к узлам на следующем уровне

  1. BFS
  2. обход в ширину
  3. BFS, обход в ширину
Вопрос 129

… - это алгоритм обхода дерева, при котором сначала посещаются все левые потомки узла, затем сам узел и его правые потомки

  1. Прямой обход
  2. Центрированный обход (in order)
  3. Обратный обход
  4. Упорядоченный обход
Вопрос 130Ответ открыт бесплатно

Метод … используется для вставки нового узла в двоичное дерево поиска

  1. insert()✓ Правильный ответ
  2. append()
  3. push()
  4. add()
✓ Правильный ответ

insert()

Вопрос 131

… - высота сбалансированного дерева, если у него есть N узлов

  1. log(N)
  2. N
  3. log(N) + 1
  4. N  1
Вопрос 132

Узел, у которого … называется корневым узлом в дереве

  1. нет дочерних узлов
  2. есть только один дочерний узел
  3. есть два дочерних узла
  4. нет родительских узлов
Вопрос 133Ответ открыт бесплатно

… выполняется в следующем порядке: левый узел, правый узел, родительский узел

  1. Прямой обход
  2. Центрированный обход (in order)
  3. Обратный обход
  4. Постфиксный обход✓ Правильный ответ
✓ Правильный ответ

Постфиксный обход

Вопрос 134

В … каждый узел может иметь более двух дочерних узлов

  1. Двоичное дереве
  2. Тройничное дереве
  3. N арное дереве
  4. AVL дереве
Вопрос 135

В дереве каждый узел, у которого нет дочерних узлов, называется ...

  1. лист
Вопрос 136Ответ открыт бесплатно

В структуре данных "дерево" ... является начальной точкой структуры.

  1. корень✓ Правильный ответ
✓ Правильный ответ

корень

Вопрос 137

Обход дерева в порядке “…” выполняется следующим образом: сначала левый дочерний узел, затем корень, затем правый дочерний узел

  1. in order
  2. Центрированный обход
Вопрос 138

Для поддержания сбалансированности двоичного дерева поиска используется ...

  1. AVL дерево
Вопрос 139

Узлы дерева, которые не являются листьями, называются ...

  1. внутренние
Вопрос 140Ответ открыт бесплатно

При обходе дерева алгоритмом ... сначала посещаются все узлы на одном уровне, а затем переходят на следующий уровень

  1. BFS✓ Правильный ответ
✓ Правильный ответ

BFS

Вопрос 141

Узел дерева, у которого есть хотя бы один дочерний узел, называется … узел

  1. внутренний
Вопрос 142

Если в дереве все уровни, кроме последнего, заполнены, оно называется ...

  1. полное
Вопрос 143Ответ открыт бесплатно

Установите соответствие между типом дерева и его характеристикой:

  1. двоичное дерево поиска✓ Правильный ответ
  2. красно черное дерево✓ Правильный ответ
  3. B дерево✓ Правильный ответ
  4. AVL дерево✓ Правильный ответ
  5. двоичное дерево поиска
  6. двоичное дерево поиска с балансировкой по цветам узлов✓ Правильный ответ
  7. дерево с большим количеством дочерних узлов✓ Правильный ответ
  8. самобалансирующееся двоичное дерево поиска✓ Правильный ответ
✓ Правильный ответ

двоичное дерево поиска = двоичное дерево поиска ; красно черное дерево = двоичное дерево поиска с балансировкой по цветам узлов ; B дерево = дерево с большим количеством дочерних узлов ; AVL дерево = самобалансирующееся двоичное дерево поиска

Вопрос 144

Установите соответствие между типом обхода дерева и его описанием:

  1. прямой обход (pre order)
  2. центрированный обход (in order)
  3. обратный обход (post order)
  4. обход в ширину (BFS)
  5. корень   левый узел   правый узел
  6. левый узел   корень   правый узел
  7. левый узел   правый узел   корень
  8. уровень за уровнем, слева направо
Вопрос 145

Расположите порядок обхода узлов дерева в прямом порядке (pre order):

  1. корень
  2. левый узел
  3. правый узел
Вопрос 146Ответ открыт бесплатно

Расположите порядок действий при удалении узла в двоичном дереве поиска:

  1. поиск узла✓ Правильный ответ
  2. проверка наличия дочерних узлов✓ Правильный ответ
  3. удаление узла✓ Правильный ответ
  4. перестройка дерева✓ Правильный ответ
✓ Правильный ответ

поиск узла ; проверка наличия дочерних узлов ; удаление узла ; перестройка дерева

Вопрос 147

Порядок операций при добавлении узла в двоичное дерево поиска - …

  1. найти место для нового узла и добавить его
  2. найти родительский узел и добавить узел как левый или правый потомок
  3. проверить наличие равного узла, если нет   добавить узел
  4. перестроить дерево и добавить узел на нужное место
Вопрос 148

… - структура данных, состоящая из узлов и ребер, соединяющих эти узлы

  1. Граф
  2. Дерево
  3. Массив
  4. Список
Вопрос 149

Алгоритм … используется для поиска кратчайшего пути в графе

  1. Дейкстры
  2. Прима
  3. Хаффмана
  4. Краскала
Вопрос 150Ответ открыт бесплатно

… не имеет направленных ребер

  1. Ориентированный граф
  2. Неориентированный граф✓ Правильный ответ
  3. Взвешенный граф
  4. Остовное дерево
✓ Правильный ответ

Неориентированный граф

Вопрос 151

В графе “…” каждый узел соединен с каждым другим узлом

  1. полный граф
  2. лес
  3. дерево
  4. взвешенный граф
Вопрос 152

Процесс обхода всех узлов графа называется …

  1. Трассировка
  2. Перебор
  3. Трансляция
  4. Топологическая сортировка
Вопрос 153Ответ открыт бесплатно

… используется для поиска в ширину в графе

  1. DFS
  2. BFS✓ Правильный ответ
  3. Алгоритм Прима
  4. Алгоритм Хаффмана
✓ Правильный ответ

BFS

Вопрос 154

… находит минимальное остовное дерево графа

  1. Алгоритм Прима
  2. Алгоритм Дейкстры
  3. Алгоритм Краскала
  4. Алгоритм Беллмана Форда
Вопрос 155

В … отсутствуют циклы

  1. ациклическом графе
  2. ориентированном графе
  3. полном графе
  4. взвешенном графе
Вопрос 156Ответ открыт бесплатно

В ... графе ребра имеют направление

  1. ориентированном✓ Правильный ответ
✓ Правильный ответ

ориентированном

Вопрос 157

Алгоритм ... используется для обхода графа в глубину

  1. DFS
Вопрос 158

Граф, в котором веса всех ребер равны, называется ...

  1. невзвешенный
Вопрос 159

В ориентированном графе вершины соединены с помощью ...

  1. направленных ребер
Вопрос 160Ответ открыт бесплатно

Для поиска кратчайшего пути в графе с отрицательными весами ребер используется алгоритм ...

  1. Беллмана Форда✓ Правильный ответ
✓ Правильный ответ

Беллмана Форда

Вопрос 161

Если в графе присутствуют циклы, то такой граф называется ...

  1. циклический
Вопрос 162

... — это способ представления графа в виде двумерной матрицы, где элементы матрицы указывают на наличие или отсутствие ребра между вершинами.

  1. Матрица смежности
Вопрос 163Ответ открыт бесплатно

Если граф не содержит петель и кратных ребер, он называется “… граф”

  1. простой✓ Правильный ответ
✓ Правильный ответ

простой

Вопрос 164

Установите соответствие между типом графа и его характеристикой:

  1. ориентированный граф
  2. неориентированный граф
  3. взвешенный граф
  4. полный граф
  5. граф, в котором ребра имеют направление
  6. граф, в котором ребра не имеют направления
  7. граф, в котором ребра имеют вес
  8. граф, в котором каждая пара узлов соединена ребром
Вопрос 165

Установите соответствие между алгоритмом и его задачей:

  1. алгоритм Дейкстры
  2. алгоритм Краскала
  3. алгоритм Прима
  4. алгоритм BFS
  5. Поиск кратчайшего пути
  6. Поиск минимального остовного дерева (алгоритм Краскала)
  7. Поиск минимального остовного дерева (алгоритм Прима)
  8. Обход в ширину
Вопрос 166Ответ открыт бесплатно

Расположите порядок действий при поиске в ширину (BFS):

  1. добавление стартовой вершины в очередь✓ Правильный ответ
  2. удаление вершины из очереди✓ Правильный ответ
  3. посещение всех смежных вершин✓ Правильный ответ
  4. помещение смежных вершин в очередь✓ Правильный ответ
✓ Правильный ответ

добавление стартовой вершины в очередь ; удаление вершины из очереди ; посещение всех смежных вершин ; помещение смежных вершин в очередь

Вопрос 167

Расположите порядок действий при поиске минимального остовного дерева по алгоритму Краскала:

  1. отсортировать ребра графа по возрастанию веса
  2. добавить минимальное ребро в остовное дерево
  3. проверить, не образует ли добавление ребра цикл
  4. повторить для всех ребер
Вопрос 168

… - это алгоритм для нахождения кратчайших путей от исходной вершины до всех других вершин в графе с неотрицательными весами ребер

  1. Алгоритм Дейкстры
Вопрос 169

Неверно, что … является частью алгоритма быстрой сортировки

  1. разделение массива
  2. слияние массивов
  3. рекурсивный вызов
  4. выбор опорного элемента
Вопрос 170Ответ открыт бесплатно

В … сохраняются вызовы функций во время их выполнения

  1. очереди
  2. стеке✓ Правильный ответ
  3. списке
  4. множестве
✓ Правильный ответ

стеке

Вопрос 171

… является первым шагом в алгоритме быстрой сортировки

  1. Сортировка левой и правой частей массива
  2. Выбор опорного элемента
  3. Объединение отсортированных массивов
  4. Разделение массива на две части
Вопрос 172

Метод … используется для сортировки массива в Python

  1. sort()
  2. reverse()
  3. pop()
  4. push()
Вопрос 173Ответ открыт бесплатно

Сложность алгоритма быстрой сортировки в худшем случае равна …

  1. O(n)
  2. O(log n)
  3. O(n log n)
  4. O(n^2)✓ Правильный ответ
✓ Правильный ответ

O(n^2)

Вопрос 174

… используется для завершения рекурсивного вызова

  1. Стек вызовов
  2. Базовый случай
  3. Опорный элемент
  4. Массив
Вопрос 175

Опорный элемент в алгоритме быстрой сортировки …

  1. объединяет массивы
  2. определяет точку разделения массива
  3. завершает выполнение функции
  4. сортирует массив
Вопрос 176Ответ открыт бесплатно

Если стек вызовов переполнится, …

  1. вызовется функция по умолчанию
  2. программа завершится ошибкой✓ Правильный ответ
  3. программа будет продолжать выполнение без изменений
  4. стек вызовов очистится
✓ Правильный ответ

программа завершится ошибкой

Вопрос 177

В алгоритме быстрой сортировки каждый рекурсивный вызов сохраняется в структуре данных под названием “...”

  1. стек
Вопрос 178

Алгоритм быстрой сортировки выбирает ... элемент для разделения массива на две части

  1. опорный
Вопрос 179

Алгоритм быстрой сортировки имеет среднюю временную сложность ...

  1. O(n log n)
  2. O(nlogn)
Вопрос 180Ответ открыт бесплатно

Базовый случай рекурсивной функции предотвращает ... вызовов

  1. бесконечность✓ Правильный ответ
  2. бесконечное количество✓ Правильный ответ
✓ Правильный ответ

бесконечность ; бесконечное количество

Вопрос 181

Алгоритм сортировки пузырьком в среднем имеет временную сложность ...

  1. O(n^2)
Вопрос 182

Чтобы предотвратить переполнение стека вызовов, в рекурсивной функции обязательно должен быть ... случай

  1. базовый
Вопрос 183Ответ открыт бесплатно

Чтобы избежать переполнения стека вызовов при глубокой рекурсии в быстрой сортировке, иногда используется ... сортировка

  1. хвостовая✓ Правильный ответ
✓ Правильный ответ

хвостовая

Вопрос 184

Переполнение стека вызовов в рекурсивной программе приводит к ошибке ...

  1. stack overflow
Вопрос 185

Установите соответствие между понятием и его описанием:

  1. стек вызовов
  2. опорный элемент
  3. базовый случай
  4. разделение массива
  5. структура данных, используемая для отслеживания вызовов функций
  6. элемент, используемый для деления массива на части
  7. граничное условие для завершения рекурсии
  8. процесс разделения массива на две части
Вопрос 186Ответ открыт бесплатно

Установите соответствие между понятием и его применением:

  1. быстрая сортировка✓ Правильный ответ
  2. стек вызовов✓ Правильный ответ
  3. базовый случай✓ Правильный ответ
  4. разделение массива✓ Правильный ответ
  5. сортировка массива с помощью опорного элемента✓ Правильный ответ
  6. хранит текущие вызовы функций✓ Правильный ответ
  7. используется для завершения рекурсивной функции✓ Правильный ответ
  8. процесс, необходимый для реализации быстрой сортировки✓ Правильный ответ
✓ Правильный ответ

быстрая сортировка = сортировка массива с помощью опорного элемента ; стек вызовов = хранит текущие вызовы функций ; базовый случай = используется для завершения рекурсивной функции ; разделение массива = процесс, необходимый для реализации быстрой сортировки

Вопрос 187

Расположите этапы выполнения быстрой сортировки в правильном порядке:

  1. выбор опорного элемента
  2. разделение массива на две части
  3. рекурсивная сортировка левой и правой части массива
  4. объединение отсортированных частей
Вопрос 188

Расположите этапы работы стека вызовов в правильном порядке:

  1. вызов функции
  2. сохранение вызова в стек
  3. выполнение функции
  4. удаление вызова из стека
Вопрос 189

… - максимальная глубина рекурсии при выполнении быстрой сортировки для массива длиной 16

  1. 4
  2. 8
  3. 16
  4. 1
Вопрос 190Ответ открыт бесплатно

… демонстрирует использование рекурсии в Python

  1. Использование цикла for
  2. Вызов функции внутри самой себя✓ Правильный ответ
  3. Создание списка с помощью генератора
  4. Присваивание значения переменной
✓ Правильный ответ

Вызов функции внутри самой себя

Вопрос 191

… может привести к переполнению стека

  1. Чрезмерное использование глобальных переменных
  2. Неправильное использование рекурсии
  3. Использование цикла while без остановки
  4. Использование функции print слишком часто
Вопрос 192

… используется для предотвращения переполнения стека в рекурсивных функциях

  1. Итерация
  2. Хвостовая рекурсия
  3. Глобальные переменные
  4. Мемоизация
Вопрос 193Ответ открыт бесплатно

Когда функция …, это представляет собой хвостовую рекурсию

  1. вызывает сама себя в конце своего выполнения✓ Правильный ответ
  2. вызывает другую функцию внутри себя
  3. использует цикл for
  4. использует return в середине своего кода
✓ Правильный ответ

вызывает сама себя в конце своего выполнения

Вопрос 194

Результатом работы рекурсивной функции, которая не имеет базового случая, будет …

  1. ошибка синтаксиса
  2. бесконечное продолжение вызова
  3. мгновенное завершение функции
  4. возвращение None функцией
Вопрос 195

… используется для отслеживания вызовов рекурсивных функций

  1. Очередь
  2. Стек
  3. Список
  4. Дерево
Вопрос 196Ответ открыт бесплатно

… - основная причина использования рекурсии в программировании

  1. Простота кода✓ Правильный ответ
  2. Увеличение времени выполнения
  3. Снижение нагрузки на память
  4. Сложность кода
✓ Правильный ответ

Простота кода

Вопрос 197

У рекурсивных функций в Python есть ограничение в виде …

  1. ограниченное количество возможных переменных
  2. максимальная глубина рекурсии
  3. отсутствие возможности возврата значений
  4. ограничение на количество аргументов
Вопрос 198

В рекурсии, если не контролировать количество вызовов, это может привести к ... памяти

  1. утечке
Вопрос 199

Если в рекурсивной функции не указан ... случай, то она может привести к переполнению стека

  1. базовый
Вопрос 200Ответ открыт бесплатно

В языке Go каждый новый вызов функции добавляется в ... , который работает по принципу LIFO (последним пришёл — первым ушёл)

  1. стек✓ Правильный ответ
✓ Правильный ответ

стек

Вопрос 201

Функция, которая вызывает сама себя, называется ...

  1. рекурсивной
Вопрос 202

В рекурсивной функции каждый вызов помещается в ... , пока не будет достигнут базовый случай

  1. стек
Вопрос 203Ответ открыт бесплатно

Максимальная глубина рекурсии в Python контролируется параметром ...

  1. sys.setrecursionlimit✓ Правильный ответ
✓ Правильный ответ

sys.setrecursionlimit

Вопрос 204

Многократный вызов одной и той же рекурсивной функции может привести к ... памяти

  1. переполнению
Вопрос 205

В хвостовой рекурсии результат возвращается немедленно, без необходимости сохранять текущий ...

  1. стек
Вопрос 206Ответ открыт бесплатно

Установите соответствие между понятием и его определением:

  1. рекурсия✓ Правильный ответ
  2. стек✓ Правильный ответ
  3. базовый случай✓ Правильный ответ
  4. хвостовая рекурсия✓ Правильный ответ
  5. функция, которая вызывает сама себя✓ Правильный ответ
  6. структура данных LIFO✓ Правильный ответ
  7. граничное условие для завершения рекурсии✓ Правильный ответ
  8. рекурсия, где результат возвращается сразу✓ Правильный ответ
✓ Правильный ответ

рекурсия = функция, которая вызывает сама себя ; стек = структура данных LIFO ; базовый случай = граничное условие для завершения рекурсии ; хвостовая рекурсия = рекурсия, где результат возвращается сразу

Вопрос 207

Установите соответствие между функцией и её применением:

  1. sys.setrecursionlimit()
  2. рекурсивная функция
  3. стек
  4. хвостовая рекурсия
  5. управляет максимальной глубиной рекурсии
  6. функция, которая вызывает сама себя
  7. отслеживает текущие вызовы функций
  8. оптимизирует использование памяти в рекурсии
Вопрос 208

Расположите шаги работы рекурсивной функции в правильном порядке:

  1. проверка базового случая
  2. вызов рекурсивной функции
  3. выполнение базового случая
  4. возврат результата
Вопрос 209

Расположите этапы работы стека в процессе рекурсии в правильном порядке:

  1. вызов функции
  2. добавление вызова функции в стек
  3. выполнение функции
  4. удаление вызова из стека
Вопрос 210Ответ открыт бесплатно

… требует использования стека для корректного выполнения?

  1. Итерационный алгоритм
  2. Линейный поиск
  3. Рекурсивный алгоритм✓ Правильный ответ
  4. Алгоритм сортировки пузырьком
✓ Правильный ответ

Рекурсивный алгоритм

О материалах и доступе

Что входит в набор «Алгоритмы и структуры данных.sa_Python0»?

210 вопросов с вариантами из опубликованных тестов (10). Сверьте формулировки и варианты с вашим заданием перед покупкой: разные программы могут содержать разные вопросы.

Какие ответы можно посмотреть бесплатно?

Нажмите «Показать ответы бесплатно»: после завершения индикатора откроется бесплатная часть ответов. Бесплатные ответы отмечены зелёным. При нескольких правильных вариантах отмечены все варианты из ключа ответа. Остальные ответы доступны после покупки.

Как получить полный доступ?

Стоимость — 2 499 ₽. Войдите в личный кабинет и оплатите выбранный предмет. Доступ действует 7 дней; подписки и автоматических списаний нет.

Что делать, если обнаружена ошибка?

Напишите нам и пришлите номер заказа, формулировку вопроса и подтверждение ошибки. Гарантия: 1 ошибка — вернём деньги.

Связаться с АртемХелп · Условия покупки · Политика конфиденциальности