Этот проект содержит реализацию операций удаления/вставки/поиска в трёх типах деревьев: бинарное дерево поиска, AVL-дерево и красно-черное дерево.
- Создание и управление AVL, RBT и бинарным деревом.
- Сохранение и загрузка деревьев в базы данных (json - RB, SQLite - Binary, neo4j - AVL).
- GUI с возможностью изменять/создавать новые/сохранять деревья.
# Необходимо скачать проект с github
git clone https://github.com/spbu-coding-2022/trees-10.git
# Для сборки используется Gradle
./gradle build
# Запуск
./gradle App:run
В проекте имеются два модулья - lib и App. lib содержит реализацию деревьев и предназначен для их использования, либо добавления новых. App - модуль, содержащий реализацию GUI.
В 'Treeple Menu' выбираете необходимое вам дерево. Чтобы добавить элемент в дерево, введите число(значение) вашего элемента перед кнопкой 'Add'. После нажатия на кнопку дерево обновится.
Чтобы удалить элемент из дерева, введите значение вашего элемента перед кнопкой 'Remove'. После нажатия дерево обновится.
Чтобы сохранить дерево, нажмите кнопку 'Save'. При повторном запуске приложения ваше сохраненное дерево отобразится автоматически, либо выведется сообщение об ошибке.
Проект использует MIT License. Подробная информация: LICENSE.