Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Voprosy_SiAOD_2021.docx
Скачиваний:
109
Добавлен:
01.04.2022
Размер:
5 Mб
Скачать
  1. Структуры данных. Хэш-таблицы.

Хеш-табли́ца — это структура данных, реализующая интерфейс ассоциативного массива, а именно, она позволяет хранить пары (ключ, значение) и выполнять три операции: операцию добавления новой пары, операцию поиска и операцию удаления пары по ключу.

Хеш-таблицей называется структура данных, предназначенная для реализации ассоциативного массива, такого в котором адресация реализуется посредством хеш-функции. Хеш-функция – это функция, преобразующая ключ key в некоторый индекс i равный h(key), где h(key) – хеш-код (хеш-сумма, хеш) key. Весь процесс получения индексов хеш-таблицы называется хешированием.

В общем случае хеш-таблица позволяет организовать массив, специфика которого проявляется в связанности индексов по отношению к хеш-функции; индексы могут быть не только целого типа данных (как это было в простых массивах), но и любого другого, для которого вычислимы хеш-коды. Данные, хранящиеся в виде такой структуры, удобны в обработке: хеш-таблица позволяет за минимальное время (O(1)) выполнять операции поиска, вставки и удаления элементов.

  1. Структуры данных. Бинарное дерево. ??

Дерево – структура данных, представляющая собой древовидную структуру в виде набора связанных узлов.

Бинарное дерево — это конечное множество элементов, которое либо пусто, либо содержит элемент (корень), связанный с двумя различными бинарными деревьями, называемыми левым и правым поддеревьями. Каждый элемент бинарного дерева называется узлом. Связи между узлами дерева называются его ветвями.Максимальный уровень какого-либо элемента дерева называется его глубиной или высотой.

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

Остальные элементы – внутренние узлы (узлы ветвления).

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

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

Двоичное дерево поиска строится по определенным правилам:

  • У каждого узла не более двух детей.

  • Любое значение меньше значения узла становится левым ребенком или ребенком левого ребенка.

  • Любое значение больше или равное значению узла становится правым ребенком или ребенком правого ребенка.

ТАБЛИЦА Сложности сортировок

  1. Алгоритмы сортировки. Сортировка выбором.

5 11 6 4 9 2 15 7 - последовательность

  1. Первый эл-т сравниваем со вторым

  2. Среди них выбираем наименьший

  3. Затем наим эл-т сравниваем с 3-им, выбираем наименьший и т.д.

Сложность: O(n^2)

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

и обмена его с первым элементом (таким образом, наименьший элемент

помещается в окончательную позицию в отсортированном массиве).

Затем мы сканируем массив, начиная со второго элемента,

в поисках наименьшего среди оставшихся n-1 элементов

и обмениваем найденный наименьший элемент со вторым,

т.е. помещаем второй наименьший элемент

в окончательную позицию в отсортированном массиве.