# Отчет по лабораторной работе "Структуры данных" ## 1. Введение В ходе выполнения лабораторной работы были выполнены реализации трех структур для хранения и обработки данных телефонных номеров: - Связный список - Хеш-таблица - Двоичное дерево поиска. Практическая часть включала в себя такие операции как: добавление или обновление телефонного номера, удаление телефонного номера, поиск владельца телефонного номера и составление списка из кортежей вида (владелец, номер). Каждое выполнение функций проводилось с списоком из кортежей вида (владелецб номер), в котором было 1000 уникальных имен и еще 9000 имен, которые уже были использованны (всего 10000 кортежей). Каждое тестирование структур выполнялось для сортированного и не сортированного начального списка 10 раз. ## 2. Результаты измерений Данные в таблице отражают среднее время в милисекундах выполнения структур. | Структура | Начальный список | insert, мс | find, мс | delete, мс | create list, мс | | :--- | :--- | ---: | ---: | ---: | ---: | | LinkedList | not sorted | 165.61 | 1.767 | 3.418 | 31.795 | | LinkedList | sorted | 171.01 | 1.720 | 3.440 | 21.378 | | HashTable | not sorted | 17.15 | 0.278 | 0.320 | 48.080 | | HashTable | sorted | 17.49 | 0.284 | 0.321 | 47.911 | | BST | not sorted | 52.95 | 0.772 | 0.660 | 0.283 | | BST | sorted | 162.70 | 1.809 | 1.564 | 1.626 | Изходя из полученных значений можно построить столбчатую диаграмму ![](data/time_schedule.png)