Я ищу библиотеку, которая выдала бы мне точные координаты каждого узла в дереве (любое дерево, а не только двоичные деревья).
Допустим, я определил деревов следующих обозначениях
(() (() (() () ()))
И какая-то библиотека дает мне такие координаты:
[500 0]([200 50]() [600 50]([500 100]() [750 100]([600 150]() [700 150]() [800 150]()))
или любые другие обозначения, которые уникально представляют дерево.
Этот видбиблиотеки позволили бы рисовать деревья с эффективным использованием пространства, а также решили бы проблему перекрывающихся узлов и связей.Например, если дерево является списком, я хотел бы, чтобы эта библиотека учитывала это и размещала узлы в одном столбце или строке для экономии места.
Если ничего подобного не существует, anАлгоритм также пригодится , при условии, что он может быть реализован относительно легко.