-
Notifications
You must be signed in to change notification settings - Fork 0
Leastick/dictionaries
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
СЛОВАРИ Реализовать несколько способов организации словаря (массивы с линейным поиском, упорядоченные массивы с бинарным поиском, деревья, сбалансированные деревья, хеш-таблицы) и сравнить их (время выполнения операций со словарем, объем занимаемой памяти) между собой и со встроенным dict. ДЛЯ ЗАПУСКА НУЖНО: 1. Python 3.6 (работоспособность на чуть более ранних версиях вероятно возможна, но не проверялась) 2. модуль matplotlib (используется для построения графиков) ЧТО ЕСТЬ: 1) Обычный словарь на листе 2) Словарь на отсортированном листе 3) Хэш-таблица 4) Небалансируещеся бинарное дерево поиска 5) Декартово дерево (самобалансирующееся дерево, рандомизированное) 6) Тесты, проверяющие корректность работы описанных выше структуры данных 7) Генератор тестов, который умеет генерировать тесты на лучший/худший/рандомный случай, различных размеров (папка test_generator) 8) Набор тестирующих классов для каждого вида словаря (папка testers), они используются для тестирования и настройки тестирования (указываются максимальное количество операций, чтобы ограничить время работы медленных структур данных каким-то разумным числом и точки в которых производятся замеры) 9) Графики в папке graphs и результаты тестирования в папке results 10) data_handler.py - скрипт, который собирает данные о тестировании из папки results и на их основе строит графики. Тестирование запускается в main.py.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published