Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы по АиСД 2023 / Baraeva_Elizaveta_cw.doc
Скачиваний:
0
Добавлен:
09.09.2026
Размер:
140 Кб
Скачать

3. Исследование структуры данных

3.1. Проведение экспериментов для оценки производительности

Для проведения исследования был реализован модуль, который позволял исследовать функцию удаления на разных объемах данных (10, 100, 1000, 10000, 100000).

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

Результаты исследования в табл. 2, табл. 3.

Таблица 2 – Результаты исследования с размером 10

Количество элементов

Время выполнения (ms)

Худший случай

Время выполнения (ms)

Лучший случай

10

0.0

0.0

100

0.2

0.0

1000

1.9

1.0

10000

178.2

3.2

100000

74964.2

34.5

Таблица 3 – Результаты исследования с размером 100

Количество элементов

Время выполнения (ms)

Худший случай

Время выполнения (ms)

Лучший случай

10

0.0

0.0

100

0.0

0.0

1000

0.6

0.1

10000

20.9

3.0

100000

5029.9

33.3

3.2. Анализ полученных результатов

В теоретической оценке время выполнения функции удаления увеличивается линейно от количества данных. Полученный результаты близки к теоретическим, так как время выполнения линейно увеличивается с увеличением числа элементов. Явно эта разница становится видна в таблице на числах больше 10^4.

Заключение

В ходе выполнения курсовой работы была реализована структура данных – хеш-таблица, с методом решения коллизий с помощью цепочек. Для данной структуры были реализованы методы вставки, удаления, поиска значений. Был проведен теоретический анализ сложности разных методов. Также помимо реализации структуры, был проведет анализ ее эффективности. В результате которого, стало понятно, что ее эффективность соответствует теоретическим оценкам и время выполнения метода линейно зависит от количества элементов.

Список использованных источников

  1. Хеш-таблица ­– Википедия URL: https://ru.wikipedia.org/wiki/Хеш-таблица

  2. Хеш-таблицы – CodeChick URL: https://codechick.io/tutorials/dsa/dsa-hash-table

  3. Hashing Data Structure – GeeksForgeeks URL: https://www.geeksforgeeks.org/hashing-data-structure/?ref=header_search

  4. Разрешение коллизий – Викиконспекты URL: https://neerc.ifmo.ru/wiki/index.php?title=Разрешение_коллизий

Соседние файлы в папке Лабы по АиСД 2023