Графическое представление дерева AVL

Я реализовал дерево AVL с использованием C ++, в данный момент я печатаю дерево AVL на консоли, но мне нужно представить дерево с помощью графического интерфейса пользователя как часть приложения, которое пользователь может использовать для взаимодействия с деревом. какие библиотеки и т. д. я должен изучить, чтобы достичь этого?

Примечание: я использую OS X

0

Решение

Дело в том, что, похоже, ожидается какое-то взаимодействие с пользователем.

Какие операции должен выполнять пользователь? Перемещение узлов, вставка, удаление?

Вы можете пойти на подход Graphviz, но если вы хотите, чтобы взаимодействие с пользователем, то для Graphviz вы должны пойти на вывод HTML. Таким образом, вы можете, например, связывайте узлы с интерактивными ссылками, где вы можете оставить некоторую логику работы.

Если этого недостаточно, вам нужно будет выбрать общую среду графического интерфейса и посмотреть, какие библиотеки доступны.

В случае C ++ Qt — это одна вещь, на которую стоит обратить внимание. Существует нечто, называемое древовидным представлением, которое может соответствовать вашей проблеме (см., Например, здесь: http://doc.qt.digia.com/qt/qtreeview.html).

Однако, будьте готовы, что вам понадобится некоторое время, чтобы войти в Qt.

0

Другие решения

Graphviz набор инструментов для визуализации графиков Написание графических файлов действительно простое и использование одного из бэк-эндов, чтобы выложить изображение. Затем вы можете отобразить эти изображения с помощью любого набора инструментов, который вам нравится.

0

Graphviz мог бы сделать работу.

А вот и документ.

0